删除列包含特定子字符串的行[重复]

Posted

技术标签:

【中文标题】删除列包含特定子字符串的行[重复]【英文标题】:Remove rows where a column contains a specific substring [duplicate] 【发布时间】:2020-09-27 22:25:29 【问题描述】:

如何消除包含我不想要的单词的rown? 我有这个数据框:

index  price    description
0      15       Kit 10 Esponjas Para Cartuchos Jato De Tinta ...
1      15       Snap Fill Para Cartuchos Hp 60 61 122 901 21 ...
2      16       Clips Para Cartuchos Hp 21 22 60 74 75 92 93 ...

我正在尝试删除带有“esponja”一词的行

我想要这样的 DataFrame:

index  price    description
    1      15       Snap Fill Para Cartuchos Hp 60 61 122 901 21 ...
    2      16       Clips Para Cartuchos Hp 21 22 60 74 75 92 93 ...

我是新手,我不知道如何解决这个问题

【问题讨论】:

【参考方案1】:

通过检查包含'Esponjas' 的字符串来创建一个布尔掩码,然后使用否定掩码索引到您的数据帧中。

df[~df['description'].str.contains('Esponjas')]

如果你不确定发生了什么,打印出来

df['description']
df['description'].str.contains('Esponjas')
~df['description'].str.contains('Esponjas')

自己做。如果要执行不区分大小写的子字符串检查,请使用case=False 作为str.contains 的关键字参数。

【讨论】:

我会添加 case=False 以忽略此情况 @Datanovice 谢谢,好建议。 非常感谢您的关注

以上是关于删除列包含特定子字符串的行[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Python数据框-如何选择名称中包含特定子字符串的所有列[重复]

在python数据框中删除不包含列中特定字符串的多列的重复项

SQL使用子字符串值更新列值[重复]

SQL使用子字符串值更新列值[重复]

删除作为其他行子字符串的行

用其他列值pyspark替换包含美元符号($)的子字符串[重复]