You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何合并DataFrame中的半重复行并修正总计值

合并重复ID的DataFrame行并计算正确总计值

问题描述

现有如下结构的DataFrame,其中存在重复的ID(及对应Name),单条重复行的Total值虽显示为固定正确值,但app_A/app_B/app_C列的数值分散在多行,需要合并重复行并汇总这些列的数值,最终得到无重复ID的正确数据集:

IDNameapp_Aapp_Bapp_CTotal
0001John Smith0538
0002Peter Piper2035
0003Susan Jones1007
0003Susan Jones0247
..................

解决方案

使用Pandas的groupby+agg方法实现合并与汇总:

import pandas as pd

# 假设原始数据存储在DataFrame df中
merged_df = df.groupby(['ID', 'Name'], as_index=False).agg(
    app_A='sum',
    app_B='sum',
    app_C='sum',
    Total='first'  # 重复行的Total值统一正确,取任意一个即可
)

代码说明

  • 按ID和Name分组:确保同一用户的所有重复行被归为一组
  • 对app_A/app_B/app_C求和:将分散在多行的数值合并为正确的总计
  • Total列取第一个值:由于重复行的Total值已经是正确的统一值,使用first/max/min均可得到正确结果

最终输出

处理后得到的DataFrame如下:

IDNameapp_Aapp_Bapp_CTotal
0001John Smith0538
0002Peter Piper2035
0003Susan Jones1247
..................

内容的提问来源于stack exchange,提问作者ScottC

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 11:10:35