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

6bc51xsx  于 2022-11-27  发布在  其他
关注(0)|答案(1)|浏览(129)
Amount
0   250000
1   ₹40,000,000
2   ₹65,000,000
3   2000000
4   —
... ...
521 225000000
522 —
523 7500
524 ₹35,000,000
525 35000000
526 rows × 1 columns

我们如何将金额列与货币符号和金额列分开

qoefvg9y

qoefvg9y1#

您可以使用str.extract

df[['currency', 'Amount']] = df['Amount'].str.extract(r'(\D*)(\d.*)')

输出量:

Amount currency
0        250000         
1    40,000,000        ₹
2    65,000,000        ₹
3       2000000         
4           NaN      NaN
521   225000000         
522         NaN      NaN
523        7500         
524  35,000,000        ₹
525    35000000

如果进一步需要转换为数字:

df['Amount'] = pd.to_numeric(df['Amount'].str.replace(',', ''))

输出量:

Amount currency
0       250000.0         
1     40000000.0        ₹
2     65000000.0        ₹
3      2000000.0         
4            NaN      NaN
521  225000000.0         
522          NaN      NaN
523       7500.0         
524   35000000.0        ₹
525   35000000.0

相关问题