我有一个包含不同类型名称的列(ResourceName)的数据框:
Testvalue
F424221M
F844071
water
我想删除 包含数字(第2行和第3行)的行,以便保留包含Testvalue的行。我找不到合适的解决方案。
类似的东西:
df1 = df1[(df1['ResourceName']) != '**CONTAINS ANY NUMBER**']
答案 0 :(得分:3)
您可以使用向量化contains
和正则表达式模式\d
来查看字符串是否包含任何数字以创建布尔掩码并使用~
来否定它:
In [173]:
df[~df['Testvalue'].str.contains('\d')]
Out[173]:
Testvalue
2 water
这里contains
生成以下布尔掩码:
In [174]:
df['Testvalue'].str.contains('\d')
Out[174]:
0 True
1 True
2 False
Name: Testvalue, dtype: bool