我知道这是一个又一次被问到的问题,但是我对列表的理解不是很好,我的代码也有些许改动。
我有一个包含关键字的数据框,如果关键字包含专用列表中的一个或多个关键字,我想对其进行过滤。
请注意,我不是在寻找确切的表达式,只是在数据框中出现子字符串。
基本上我认为它应该看起来像这样:
substring_list = ['abc', 'def']
df[df['tag'].str.contains(substring) for substring in substring_list]
我不断收到语法错误。
有任何想法吗 ?
感谢您的支持 !
Pandas进行二进制过滤,因此它返回一个True / False列表,该字符串对应于字符串是否包含您的密钥,您可以对所有条件进行按位与/或操作,因此可以得到包含所有子字符串的字符串或其中的任何一个(取决于您是否使用'and'&或'or'| |)
df[df['tag'].str.contains('abc') | df['tag'].str.contains('def')]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句