pandas 去重保留最大值

pandas对数据去重,并保留最大值
pandas **drop_duplicates()**函数使用方法

DataFrame.duplicates(subset,keep,inplace)

·subset参数用来指定识别重复的列标签/列标签序列,当未指定时默认比较整行的所有列来判别是否有重复
·keep参数用来指定如何标记重复行,它的值有三个: first,last,False.当选择first时,重复行中除了第一次出现的全部标记为True(保留第一次出现的);当选择last时,重复行中除最后一次出现的全部标记为True;(保留最后一次出现的),当选择False时,所有重复行都标记为True;
·inplace参数时决定文本对象直接删除重复行(inplace=True,需显示指定),还是返回一个文本对象的副本并删除了对应的重复行(inplace=False,为默认情况)

直接使用drop_duplicates()不能直接实现保留最大值,需要进行一下小小的变化
直接上代码

我的做法是通过降序value,然后使用drop_duplicates函数,删除具有重复Date和id值的值
data.sort_values('Value', ascending=False).drop_duplicates(subset=['Date', 'Id'], keep='first')

去重前:
在这里插入图片描述
去重后:
在这里插入图片描述

  • 7
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Vergil_Zsh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值