美文网首页
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