Dataframe测试两个条件

时间:2018-01-31 13:57:36

标签: python pandas

对于此数据帧 DF

   basketID  productCode
0         1           23
1         1           24
2         1           25
3         2           23
4         3           23
5         4           25
6         5           24
7         5           25

符合预期

(df['productCode']) == 23
0     True
1    False
2    False
3     True
4     True
5    False
6    False
7    False

但如果我想要23和1

(df['productCode']) == 23 & (df['basketID'] == 1)
0    False
1    False
2    False
3    False
4    False
5    False
6    False
7    False

一切都是假的。 为什么第一行不被识别?

1 个答案:

答案 0 :(得分:2)

)后需要23因为运算符优先级:

(df['productCode'] == 23) & (df['basketID'] == 1)