小编典典

如何从pandas数据框中删除包含特定列中特定字符串的行?

python

我在python中有一个非常大的数据框,我想在特定列中删除所有具有特定字符串的行。

例如,我想在数据框的列C中删除所有具有字符串“ XYZ”作为子字符串的行。

可以使用.drop()方法以一种有效的方式来实现吗?


阅读 468

收藏
2021-01-20

共1个答案

小编典典

pandas具有向量化的字符串操作,因此您可以过滤掉包含不需要的字符串的行:

In [91]: df = pd.DataFrame(dict(A=[5,3,5,6], C=["foo","bar","fooXYZbar", "bat"]))

In [92]: df
Out[92]:
   A          C
0  5        foo
1  3        bar
2  5  fooXYZbar
3  6        bat

In [93]: df[~df.C.str.contains("XYZ")]
Out[93]:
   A    C
0  5  foo
1  3  bar
3  6  bat
2021-01-20