我尝试通过以下方法过滤 Dataframe :
filter = (df_1['Year']==2022) & **(df_1['Quarter'].isin(['2022Q3','2022Q4']))**
df_incumbent = df_1[filter].groupby(['Lane','Carrier Scac','Quarter']).agg({'Cust Linehaul':np.mean,'Load Number':'count'}).unstack('Quarter',fill_value='NaN')
df_incumbent
而且它什么也不返回。但是当我逐项进行直接比较时,它返回了一个 Dataframe 。
filter = (df_1['Year']==2022) & (df_1['Quarter']=='2022Q3')
关于df_1 ['Quarter']的更多信息。如果它能提供一些线索的话。
df_1['Quarter'].unique()
<PeriodArray>
['2021Q4', '2021Q1', '2021Q3', '2021Q2', '2022Q1', '2022Q2', '1970Q1',
'NaT', '2022Q3', '2022Q4']
Length: 10, dtype: period[Q-DEC]
我已经成功地使用了isin(),传递了一个项目列表,但不确定为什么这个问题不起作用。我尝试过其他问题,但仍然无法解决它。
1条答案
按热度按时间gmxoilav1#
看起来
isin
仅适用于具有相同dtype的列表,请先尝试创建PeriodIndex: