如何检查特定列在数据框中是否具有特定值?

How to check specific column have specific values or not in dataframe?

我想检查 'data' 列是否仅包含 abc 和 xyz。如果不是那么 return 一样。 预期输出:假

 import pandas as pd
    data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],'Age':[28,34,29,42],'data':['abc','xyz','pqr','abc']}
    df = pd.DataFrame(data)
    print df

如果想要测试是否仅存在任何顺序的某些值,您可以测试集:

print (set(df['data']) == set(['xyz', 'abc']))
False

编辑:

如果需要True如果匹配至少一个值:

data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],'Age':[28,34,29,42],
        'data':['abc','abc','abc','abc']}
df = pd.DataFrame(data)
print (df)
    Name  Age data
0    Tom   28  abc
1   Jack   34  abc
2  Steve   29  abc
3  Ricky   42  abc

print (set(df['data']) <= set(['xyz', 'abc']))
True

数据框:

 data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],
         'Age':[28,34,29,42],
         'data':['abc','xyz','pqr','abcd']}
 df = pd.DataFrame(data)

试试这个:

df[df['data'].isin(['abc','xyz'])]

结果只有 2 行:汤姆和杰克