2017-07-16 78 views
0

我正在过滤基于几个字段的数据帧,其中一个是年份。今年是一个float 64数据类型。我在这里过滤年份> = 2018和从事= Y和Tier =高或中过滤器数据帧不工作

df = df [(df ['yearLine End Date Year']>=2018) & (df ['Engaged']=='Y') & (df ['Tiering']=='High')|(df ['Tiering']=='Medium')]; 

其他过滤器,除了一年工作,它还是老样子给我回2015年,2016和2017年我在做什么错误?

阿德里安

+0

是什么类型的日期列:

试试这个? –

回答

2

你已经混淆了和你的过滤器。在末附加括号

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

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

PS讲究......