python - 如何从包含熊猫/python中混合类型字符的字符串中仅取出数字(int和float)?
问题描述
我有一个这样的数据框
df
col1 col2
A abc2.4 rs
B 20.66
C sd 23.44 ()
D 200(pw)
E pw 2400 (pw)
我想从 col2 的字符串中只取出数字(int 和 float)
最终的数据框应如下所示:
col1 col2
A 2.4
B 20.66
C 23.44
D 200
E 2400
如何使用 pandas 以最有效的方式做到这一点?
解决方案
df['col2'] = df['col2'].str.extract(r'(\d+\.\d+|\d+)', expand=False)
print (df)
col1 col2
0 A 2.4
1 B 20.66
2 C 23.44
3 D 200
4 E 2400
推荐阅读
- terraform - 如何通过 Terraform 获取 Vault 机密
- python - 合并列和行索引上的两个数据框
- rsync - rsync -aur 但 rclone?
- python - 运行时的文件会创建自身的副本并删除原始文件。(Python)
- php - 如何将multiCURL请求中的GET和POST合二为一?
- swift - 更新 ARKit 的 ARWorldMap 后出现动态库错误
- ruby-on-rails - 「rescue500 => SocketError : getaddrinfo: Name or service not known」无法解决
- javascript - 即使使用不同的电子邮件登录,登录仍会重定向到同一页面
- python - 使用 cron 作业进行烧瓶 API 调用调度
- reactjs - 在 React 打字稿上将功能从一个组件传递到另一个组件的正确方法