使用"或"在pandas dataframe中搜索字符串

时间:2017-11-28 14:14:03

标签: pandas dataframe

我想这样做:

df[(df["Class"] == 'Class1' or  'Class2')]

即。查找类1或2的行,但无法在文档中找到正确的语法。

2 个答案:

答案 0 :(得分:3)

更好的是使用isin

df[df["Class"].isin(['Class1','Class2'])]

或者对|按位使用or,因为boolean indexing的运算符优先级优先:

()

query的其他解决方案:

df[(df["Class"] == 'Class1') |  (df["Class"] == 'Class2')]

或者:

df.query("Class == ['Class1', 'Class2']")

答案 1 :(得分:0)

这些是选项

df[(df["Class"] == 'Class1') |  (df["Class"] =='Class2')]

df[df["Class"].isin(['Class1','Class2'])]