import seaborn
df = seaborn.load_dataset('flights')
我想删除每年平均乘客数量少于200人的年份。我尝试过
df[df.groupby(['year'])['passengers'].mean() > 200]
但出现此错误:
*** pandas.core.indexing.IndexingError: Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed object do not match).
在正确的答案中,数据框应该删除以下年份的行: 1949、1950、1951、1952
答案 0 :(得分:1)
我认为,您需要:
因此代码应为:
df.groupby(['year']).filter(lambda x: x.passengers.mean() > 300)