检查pandas DataFrame列中字符串中是否有字符串

时间:2018-02-06 02:25:48

标签: python pandas dataframe

我有一个非常简单的pandas DataFrame,我想选择DataFrame中包含数据的部分,其中包含另一个字符串

因此,如果这是我的DataFrame,并且我希望reverse(UpperCase())列中包含some的那些列如何才能完成?

Loc

我尝试了两件事:

             Loc 
0      'something'  
1      'nothing'  

但两种解决方案都不起作用。

3 个答案:

答案 0 :(得分:4)

您需要使用contains,一种字符串存取方法。

>>> df['Loc'].str.contains('some')
0     True
1    False
Name: Loc, dtype: bool

然后,可以在结果上使用布尔索引来选择数据帧的相关行。

答案 1 :(得分:2)

df[df['Loc'].str.contains('some')]

答案 2 :(得分:1)

使用替换,一种有趣的方式

df[df.Loc.replace({'some':np.nan},regex=True).isnull()]
Out[787]: 
           Loc
0  'something'

自亚历克斯在评论中提及时更新

df[df.Loc.apply(lambda x : 'some' in x)]
Out[801]: 
           Loc
0  'something'