datafram groupby 分组取出某一列取值最大时,另一列的取值

ht表概览
在这里插入图片描述

目标:对每个用户id分组,取出totalCont最大时的热门+位置

方法1:

ht.groupby('用户id').apply(lambda x: x.loc[x.totalCount.idxmax(), '热门+位置'])

当数据量大时,非常慢!

方法2:
totalCount排序,然后去除用户id重复项,保留第一项(即保留了totalCount最大时的用户id)。

ht.sort_values('totalCount', ascending=False).drop_duplicates(subset=['用户id'], keep='first')['热门+位置']

参考:https://blog.csdn.net/mappy93/article/details/79319506/

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值