栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Python-根据列的最大值删除重复项

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python-根据列的最大值删除重复项

您需要

DataframeGroupBy.idxmax
选择的最大值为
value3
和的索引
Dataframe
loc

print (df.groupby(['id1','id2','value1']).value3.idxmax())id1  id2  value11    2    30        13    5    12        424   12   1         6Name: value3, dtype: int64df = df.loc[df.groupby(['id1','id2','value1']).value3.idxmax()]print (df)   id1  id2  value1  value2  value3   a1    1    2      30      42    26.2 NaN4    3    5      12      33    11.2 NaN6   24   12       1      23     1.9 NaN

另一种可能的解决方案是

sort_values
按列
value3
,然后
groupby
使用
GroupBy.first

df = df.sort_values('value3', ascending=False)       .groupby(['id1','id2','value1'], sort=False)       .first()       .reset_index()print (df)   id1  id2  value1  value2  value3   a0    1    2      30      42    26.2 NaN1    3    5      12      33    11.2 NaN2   24   12       1      23     1.9 NaN


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/623566.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号