[英]Remove non-numeric characters using pandas
我最近陷入了 Python 以自动化一些重复性任务。
我的脚本使用 API 和 pandas 收集两组数据,将它们合并到一个数据文件中,并在其中进行一系列检查,然后根据设定的标准处理数据。 我花了整整 8 个小时来解决这个问题并得到一些工作,但我在最后一个障碍上绊倒了
我正在尝试使用简单的 pivot 表来总结检查结果,并且需要将存储在 df 列之一(commissionAmount)中的值相加。 问题是存储在此列中的值如下所示
{'金额':97.0,'货币':'英镑'}
我需要它只包含 97.0 但我无法弄清楚。
任何帮助,将不胜感激。
假设您的数字格式始终相同(小数点前 2 位,小数点后 1 位):
df['Col1'].str.extract(r'(\d{2}\.\d)')
根据给出的示例给出正确的 output
df3 = pd.DataFrame()
df3['Col1'] = ["{'amount': 97.0, 'currency': 'GBP'}"]
df3['Col1'].str.extract(r'(\d{2}\.\d)')
0 97.0
给定df
:
col1
0 {'amount': 97.0, 'currency': 'GBP'}
我们可以通过执行以下操作来提取amount
:
df.col1 = df.col1.str.get('amount')
print(df)
Output:
col1
0 97.0
我实际上争取将这个以前隐藏的功能添加到文档中,现在是~ pandas.Series.str.get :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.