美文网首页
groupby取最大值对应的行

groupby取最大值对应的行

作者: 7ming | 来源:发表于2019-06-13 00:12 被阅读0次

问题描述:

     对带有时间戳的数据做分组( groupby) 后向想取到每组时间 (或id) 最大的一条

解决:

    1. 其中一种方法是:先groupby 取到最大时间(或id),然后再做left join 此法适用于sql

    2. 首先对数据做排序,然后groupby 取到的就是时间(或id) 最大(小) 的一条

    3. pandas的做法 原理同2

            df.sort_values('时间', ascending=False).groupby('聚合字段', as_index=False).first()

4. 同理 需要取top N 数据

           df.sort_values('时间', ascending=False).groupby('聚合字段', as_index=False).head(N)

相关文章

网友评论

      本文标题:groupby取最大值对应的行

      本文链接:https://www.haomeiwen.com/subject/hfydfctx.html