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

如何用Pandas将带特殊符号的金额数据转换为整数?

用Pandas清理印度卢比金额数据并转整数

先构造包含目标数据的DataFrame:

import pandas as pd

data = {'salary': ['₹8,36,874/yr', '₹6,69,578/yr', '₹9,44,110/yr']}
df = pd.DataFrame(data)

方法一:分步替换清理

直接针对要移除的字符逐一处理,逻辑直观:

# 依次移除₹符号、逗号、/yr后缀,再转为整数
df['cleaned_salary'] = df['salary'] \
    .str.replace('₹', '', regex=False) \
    .str.replace(',', '', regex=False) \
    .str.replace('/yr', '', regex=False) \
    .astype(int)

方法二:正则提取高效处理

用正则提取出金额的数字部分(包含逗号),再清理逗号转整数,适配性更强:

# 提取金额中的数字和逗号组合,移除逗号后转整数
df['cleaned_salary'] = df['salary'] \
    .str.extract(r'([\d,]+)') \
    .str.replace(',', '', regex=False) \
    .astype(int)

处理后运行print(df)就能得到干净的整数列:

salary  cleaned_salary
0  ₹8,36,874/yr          836874
1  ₹6,69,578/yr          669578
2  ₹9,44,110/yr          944110

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 02:04:54