Python 数据帧测试有两个条件
对于此数据帧 df 如期而至Python 数据帧测试有两个条件,python,pandas,Python,Pandas,对于此数据帧 df 如期而至 (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
(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
一切都是假的。
为什么第一行未被识别?您需要)
在23
之后,因为运算符优先级:
(df['productCode'] == 23) & (df['basketID'] == 1)
(df['productCode']==23)|(df['basketID']==1)
也许?请注意,在最后一种情况下,您的第一个右括号位于错误的位置,无论是使用and还是or组合。
(df['productCode'] == 23) & (df['basketID'] == 1)