You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python Pandas如何给字符串DataFrame加千分位且不修改百分比行

实现方案

思路

仅对索引不是GHI的行做处理,将对应列的字符串数值转整数后格式化为带空格的千位分隔符格式,GHI行完全保留原值不做任何修改。

完整代码

import pandas as pd

# 构造示例DataFrame(与给出的结构一致,所有值为字符串,IDX为索引)
data = {
    "COL1": ["130", "5409", "34.9"],
    "COL2": ["0", "346", "25.3"]
}
df = pd.DataFrame(data, index=["ABC", "DEF", "GHI"])
df.index.name = "IDX"

# 生成掩码:标记需要处理的行
process_mask = df.index != "GHI"

# 遍历目标列,执行千位分隔符格式化
for col in ["COL1", "COL2"]:
    df.loc[process_mask, col] = df.loc[process_mask, col].apply(
        lambda x: f"{int(x):,}".replace(",", " ")
    )

# 打印验证结果
print(df)

输出结果

运行后打印的DataFrame完全匹配预期效果:

COL1 COL2
IDX           
ABC   130    0
DEF 5 409  346
GHI  34.9 25.3

说明

  1. 所有输出值仍为字符串类型,符合要求
  2. 索引为GHI的行全程未参与计算,内容与原始值完全一致
  3. 千位分隔符通过替换Python默认的逗号分隔符为空格实现,格式完全匹配需求

内容的提问来源于stack exchange,提问作者dingaro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 16:30:00