python - 删除所有满足正则表达式条件的行

标签 python regex pandas

尝试自学 pandas.. 并尝试使用不同的数据类型

我有一个df如下

df = pd.DataFrame({'ID':[0,2,"bike","cake"], 'Course':['Test','Math','Store','History'] })
print(df)
    ID  Course
0   0   Test
1   2   Math
2   bike    Store
3   cake    History

ID的dtype当然是对象。如果 ID 中有字符串,我想要做的是删除 DF 中的所有行。

我认为这会很简单......

df.ID.filter(regex='[\w]*')

但这会返回所有内容,是否有处理此类事情的可靠方法?

最佳答案

您可以使用to_numeric

df[pd.to_numeric(df.ID,errors='coerce').notnull()]
Out[450]: 
  Course ID
0   Test  0
1   Math  2

关于python - 删除所有满足正则表达式条件的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52229998/

相关文章:

python - 创建一个函数来计算不同年份的中位数成本

将正则表达式解析为语法树的java库

python - 将具有重复键的 Pandas DataFrame 转换为字典

python - macOS Python 和 numpy 在训练神经网络方面比 Julia 更快

Python 在网页上自动打字

python - 没有名为 '_pywrap_tensorflow_internal' 的模块(仍然没有工作解决方案)

javascript - JavaScript 正则表达式的复杂字符串操作

java - 为什么这个 Java 正则表达式不能编译?

python - 用 Pandas 读取格式错误的 'csv' 文件

python-3.x - 除非使用 sudo 运行,否则 Python 脚本不起作用