python - 如何从列中删除非数字字符
问题描述
我一直在使用一个列,我必须从该列中删除非数字字符,但是我已经尝试过但在我的情况下不起作用。
输入数据
column1
675@12
##256H8\
A--5647R
NaN
222674
98AB 789
预期产出
column1
67512
2568
5647
NaN
222674
98789
我一直在使用的代码:
df['column1'] = re.sub("[^0-9^.]", "", str(df['column1']))
但它不起作用,请提出可能的方法。
解决方案
您可以使用 pandas 系列的矢量化对应方法re.sub
来.str.replace
删除\D
(匹配非数字字符):
df.column1.str.replace('\D', '')
0 67512
1 2568
2 5647
3 NaN
4 222674
5 98789
Name: column1, dtype: object
推荐阅读
- javascript - 如何在页面加载时从 div 标签中获取 id 并将其设置为活动状态?
- php - 如何在 PHP 中使用函数对数组求和
- python - YouTube Data API v3 返回的搜索结果很少
- kettle - 如何定义用于登录 Kettle 的数据库变量?
- javascript - Dialogflow API 连接
- wordpress - 从 Sober 控制器输出自定义刀片部分
- visual-studio-code - 根据 VS Code 中的类数组建议 CSS 类
- xamarin.forms - xamarin.forms 在工具栏中添加开关
- python - 如何在 Python 中创建对数间隔数组?
- django - Django 运行服务器停止