pandas 识别最大值并去除重复项

这篇具有很好参考价值的文章主要介绍了pandas 识别最大值并去除重复项。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

碰见一个七千多万行的数据,结构是这样的

id a b c d
2333 2 3 4 5
233 3 3 4 5
12333 1 3 3 5
12333 1 3 4 5

第1列是标识,a,b,c,d是记录的数值,标识里面会有重复的,目的是想要找到唯一id,并且后面数值加起来最大的那一行。

  • 开始直接做了df['id'].value_counts().index,然后遍历里面id,再匹配出来id为这个值的所有行,挑出后面值加起来最大的那个。但这个数据太大了,跑起来又慢。

  • 想到了groupby,但是这个groupby是聚合函数,带不出后面原始数据

  • 再转换想法,那就去重好了,保留值最大的那一行就可以了,果然快了

df['_num'] = df.iloc[:, 1:].sum(axis=1)
df_ = df.sort_values('_num', ascending=False).drop_duplicates(subset=['id'], keep='first')

就酱文章来源地址https://www.toymoban.com/news/detail-731108.html

到了这里,关于pandas 识别最大值并去除重复项的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • DB SQL 转 ES DSL(支持多种数据库常用查询、统计、平均值、最大值、最小值、求和语法)...

    1. 简介   日常开发中需要查询 Elasticsearch 中的数据时,一般会采用 RestHighLevelClient 高级客户端封装的API。项目中一般采用一种或多种关系型数据库(如: Mysql 、 PostgreSQL 、 Oracle 等) + NoSQL(如: Elasticsearch )存储方案;不同关系数据库可以采用 Mybatis-Plus 方案屏蔽数据库的方言

    2024年01月17日
    浏览(40)
  • 华为od 机试真题 Python 实现【矩阵最大值】

    给定一个仅包含0和1的N*N二维矩阵,请计算二维矩阵的最大值,计算规则如下: 1、 每行元素按下标顺序组成一个二进制数(下标越大越排在低位),二进制数的值就是该行的值。矩阵各行值之和为矩阵的值。 2、允许通过向左或向右整体循环移动每行元素来改变各元素在行中

    2024年02月08日
    浏览(35)
  • Python获取二维数组(矩阵)第二列值与最大值

    对于二维数组(矩阵)的应用有多广与多重要,怎么研究都不为过,突然想获取其中最大的一组值,发现max返回的是第一列最大值的这组数,如何获得第二列最大的这组数呢? 比如: A=[[1, 2], [12, 22], [22, 5], [22, 50], [122, 50], [330, 3], [4, 400], [34, 56], [3, 44]] 如果max(A),返回的是[330, 3

    2024年02月06日
    浏览(40)
  • 【华为OD机试】矩阵最大值(python, java, c++, js)

    前言 :本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你。关于OD机试流程、面经、面试指导等,如有任何疑问,欢迎联系我,wechat:steven_moda;email:nansun0903@163.com;备注:CSDN。 给定一个仅包含0和1的N*N的二维

    2024年02月11日
    浏览(38)
  • Python自动计算Excel数据指定范围内的区间最大值

      本文介绍基于 Python 语言,基于 Excel 表格文件内某一列的数据,计算这一列数据在每一个 指定数量的行 的范围内(例如每一个 4 行的范围内)的 区间最大值 的方法。   已知我们现有一个 .csv 格式的 Excel 表格文件,其中有一列数据,我们希望对其加以 区间最大值 的

    2024年02月15日
    浏览(32)
  • Python如何求出矩阵中的最大值最小值以及所在的位置

    想着记录下来吧,代码小白,一点一点来。 题目简述:有个50x53的矩阵G,第53列是每一行的总和,目的是求出第53列的最小值,并输出最小值所在行的所有元素。 因为要根据第52列来找出最小值,调用min()函数便能求出最小值; min = G[:,52].min() 结果为13561.0,发现对应的是矩

    2024年02月12日
    浏览(36)
  • Python编程习题(22):矩阵行、列、对角线和的最大值

    求一个 3*3 矩阵每行、每列及对角线和的最大值。 输入格式: 在一行输入9个整数。 输出格式: 在一行输出每行、每列及对角线和的最大值。 输入样例: 在这里给出一组输入。例如: 输出样例: 在这里给出相应的输出。例如: 解答代码: 

    2024年02月16日
    浏览(38)
  • Python3 max() 函数 -求最大值、Python3 min() 函数 -求最小值

    ​ max() ​ 方法返回给定参数的最大值,参数可以为序列。 以下是​  max() ​ 方法的语法: x -- 数值表达式。 y -- 数值表达式。 z -- 数值表达式。 返回给定参数的最大值。 以下展示了使用 ​ max() ​ 方法的实例: 尝试一下 以上实例运行后输出结果为: ​ min()  ​方法返回给

    2023年04月26日
    浏览(48)
  • 【华为OD统一考试B卷 | 100分】矩阵最大值(C++ Java JavaScript Python)

    在线OJ 已购买本专栏用户,请私信博主开通账号,在线刷题!!! 运行出现 Runtime Error 0Aborted,请忽略 华为OD统一考试A卷+B卷 新题库说明 2023年5月份,华为官方已经将的 2022/0223Q(1/2/3/4)统一修改为OD统一考试(A卷)和OD统一考试(B卷)。 你收到的链接上面会标注A卷还是B卷。

    2024年02月08日
    浏览(78)
  • 【华为OD机试真题 C++ Java Python】1、滑动窗口最大值 | 机试真题+思路参考+代码解析

    🍂个人博客首页: KJ.JK   🍂专栏介绍: 定期更新华为OD各个时间阶段的机试真题,每日定时更新,本专栏每篇的文章都会将使用C++、Python、Java三种语言进行更新解答,每个题目的思路分析都非常详细,超过百字欢迎大家订阅学习,代码可以直接运行使用 🎃题目描述 有一个

    2024年02月08日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包