Python Pandas:如何查找其中一列的值是另一列中值的子集的行?

时间:2017-10-26 13:41:17

标签: python pandas dataframe

  Possible_Values                          Default_Value 
  Yes||No                                  Yes
  Sport||Adventure||tourer                 Cruiser
  Low End||Mid Range||Top End              None
上面的

是我的数据框,我要为其提取行,其中值列在' Default_Value'不在列' Possible_Value'中的值中。请注意< Possible_Values'中的值。列是管道||分离。 我正在使用Pandas == 0.20.3。

1 个答案:

答案 0 :(得分:1)

IIUC你可以检查其他人是否存在:

mask = df.apply(lambda x : x['Default_Value'] in x['Possible_Values'],1)
ndf = df[mask]
 Possible_Values Default_Value    
0         Yes||No           Yes 

如果你想要与此相反,那么ndf = df[~mask]

                Possible_Values Default_Value
1     Sport||Adventure||tourer       Cruiser
2  Low End||Mid Range||Top End          None