Python 筛选数据帧不工作

Python 筛选数据帧不工作,python,pandas,Python,Pandas,我根据几个字段过滤数据帧,其中一个字段是year。年份是浮点64数据类型。我过滤的年份>=2018,参与度=Y,层次=高或中等 df = df [(df ['yearLine End Date Year']>=2018) & (df ['Engaged']=='Y') & (df ['Tiering']=='High')|(df ['Tiering']=='Medium')]; 除了今年,其他的过滤器都在工作,它还在给我2015年、2016年和2017年的回报。我做错了什

我根据几个字段过滤数据帧,其中一个字段是year。年份是浮点64数据类型。我过滤的年份>=2018,参与度=Y,层次=高或中等

df = df [(df ['yearLine End Date Year']>=2018) & (df ['Engaged']=='Y') & (df ['Tiering']=='High')|(df ['Tiering']=='Medium')];
除了今年,其他的过滤器都在工作,它还在给我2015年、2016年和2017年的回报。我做错了什么


Adrian

您的过滤器中混入了and和or

试试这个:

df[(df['yearLine End Date Year']>=2018) & (df['Engaged']=='Y') & df['Tiering'].isin(['High','Medium'])]


请注意结尾处的附加括号…

您在过滤器中混淆了and和or

试试这个:

df[(df['yearLine End Date Year']>=2018) & (df['Engaged']=='Y') & df['Tiering'].isin(['High','Medium'])]


PS注意末尾的附加括号…

日期栏是什么类型的?日期栏是什么类型的?