问题描述
假设我们有 “表1” 这样一个数据,需要删除A列的重复行,同时保留重复行中B列最大值所在的行,即需要得到 “表2” 的结果。
table = pd.DataFrame({"A":["甲", "乙", "甲", "甲"],
"B":[2,2,3,4]})
table
表1:

表2:

解决方案1
- 对 B 列进行降序排序;
- 删除 A 列的重复的行,但保留第一次出现的行。
- 重置索引
table.sort_values("B", ascending=False).drop_duplicates("A", keep='first').reset_index(drop=True)
解决方案2
通过 groupby 的方法实现。
table.groupby(['A'])['B'].max()
本文介绍如何使用Python Pandas库处理数据表格中的重复行问题,具体为删除重复行的同时保留B列的最大值所在行。提供了两种方法:一种是对B列进行排序后删除重复项,另一种是通过groupby方法实现。
1万+

被折叠的 条评论
为什么被折叠?



