删除具有特定字符串值 pandas 的行

Drop rows with specific string value pandas

我有一些带有桥接数据的 df,其中某些列中包含字符串“(R)”。如果值是 "Blabla (R)" 或 "hello (R)",我想删除这些行。 (所以 str.contains)

如图所示,我想删除第 9 行。(以及更多)

为什么会出现这个错误以及如何解决这个问题?

如果您想删除 df 数据框中 road 字段等于 (S) 的任何行,则可以使用以下代码。这将删除同一数据框中的这些行 (df)

df.drop(index=df[df['road'] == '(R)'].index, inplace=True)

如问题中所述,str.contains 是一个用于通配符搜索的有用工具。

df.drop(df[df['name'].str.contains('R')].index.tolist())

.index returns 不可迭代的 Int64Index,因此 .tolist() 将其转换为列表并最终为 df.drop([]).

做好准备