如何在pandas中分组后从每组中选择前n行?

时间:2018-05-18 16:25:53

标签: python pandas

我有一个带有以下形状的pandas数据框

file:///

我想找到每个(年,月)的最佳类型,所以我首先找到每个类型(年,月)的计数

 open_year, open_month, type, col1, col2, ....

然后我想基于每个(year_month)的频率(例如计数)找到前n个类型。我怎么能这样做?

我可以使用freq_df = df.groupby(['open_year','open_month','type']).size().reset_index() freq_df.columns = ['open_year','open_month','type','count'] ,但我缺少类型

nlargest

但我错过了专栏freq_df.groupby(['open_year','open_month'])['count'].nlargest(5)

1 个答案:

答案 0 :(得分:3)

我建议您先按降序排列计数,然后在{ - 1}}之后调用 -

GroupBy.head