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

如何在Pandas数据框中将货币符号前缀拆分至单独列

Pandas拆分Amount列为货币符号列和金额列

针对你提供的Amount列数据(包含带₹符号、纯数字、破折号占位的情况),可以通过以下步骤拆分出货币符号列和清洗后的金额列:

步骤1:提取货币符号

使用正则表达式提取开头的非数字、非破折号字符,作为货币符号:

import pandas as pd

# 假设你的数据框名为df
df['Currency'] = df['Amount'].str.extract(r'^([^\d—]+)?', expand=False)

正则^([^\d—]+)?会匹配字符串开头的所有非数字、非破折号的字符,没有符号的行将返回NaN。

步骤2:提取并清洗金额

先移除货币符号、千分位逗号,再将破折号替换为缺失值,最后转换为整数类型:

df['Cleaned_Amount'] = (
    df['Amount']
    .str.replace(r'^[^\d]+', '', regex=True)  # 移除开头的非数字字符(即货币符号)
    .str.replace(',', '')  # 移除千分位逗号
    .replace('—', pd.NA)  # 将破折号替换为标准缺失值
    .astype('Int64')  # 转换为支持缺失值的整数类型
)

结果说明

处理后的数据框会新增Currency(货币符号,如₹或NaN)和Cleaned_Amount(整数格式的金额,缺失值显示为<NA>)两列,原Amount列可以根据需要保留或删除。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 14:20:58