如何在熊猫数据框中找到每个月的“n”个最大值? [复制]

Posted

技术标签:

【中文标题】如何在熊猫数据框中找到每个月的“n”个最大值? [复制]【英文标题】:How do I find "n" maximum values for each month in a pandas dataframe? [duplicate] 【发布时间】:2020-05-26 07:30:15 【问题描述】:

给定一个 Pandas 数据框,其中包含公司在一年中不同月份的采购,我如何找到每个月最高的“N”?

目前有:

df.groupby(df['Transaction Date'].dt.strftime('%B'))['Amount'].max()

返回每个月的最高值,但希望查看最高的四个值。

我是接近这里还是有更有效的方法?提前致谢

【问题讨论】:

欢迎堆栈溢出!有一个内置函数dataframe.nlargest() 看起来很合适,但是如果没有样本输入和输出来制作minimal reproducible example 就很难回答@ 这能回答你的问题吗? Pandas get topmost n records within each group 你做过研究吗?见:How to Ask、meta.***.com/questions/261592/… 【参考方案1】:

sort_values 然后tail

yourdf=df.sort_values('Amount').groupby(df['Transaction Date'].dt.strftime('%B'))['Amount'].tail(4)

【讨论】:

非常感谢 @mkelly 请分享minimal reproducible example。

以上是关于如何在熊猫数据框中找到每个月的“n”个最大值? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何获取熊猫数据框中的行,列中具有最大值并保留原始索引?

如何将列表中的值分配给熊猫数据框并控制每个列表元素在数据框中的分布/频率

如何在熊猫数据框中找到重复项? [复制]

如何在每个组中估算熊猫数据框中的一列[重复]

EXCEL中如何实现动态显示每个月的数据?

从熊猫数据框中获取最小和最大日期