【发布时间】:2021-07-01 20:04:54
【问题描述】:
使用str.extract() 从字符串中提取数字是可行的(见下文),但是当我必须在 30 多列上重复此操作时,它会很耗时。
原来是这样的:
yyyy
2014 110.7438016528926\K
2015 103.7533512064343\O
2016 111.6531165311653\L
2017 nan\L
2018 nan\E
Name: dips_cert_earning_premium_weekly, dtype: object
然后我写了这些代码:
df['dips_cert_earning_premium_weekly'] = df['dips_cert_earning_premium_weekly'].str.extract(r'(\d+(?:\.\d+)?)').astype(float)
输出:
yyyy
2014 110.743802
2015 103.753351
2016 111.653117
2017 NaN
2018 NaN
Name: dips_cert_earning_premium_weekly, dtype: float64
有没有更有效的方法来做到这一点?
【问题讨论】:
-
pypi.org/project/parse 试试这个,可能对你有帮助
标签: python pandas string dataframe extract