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

如何在Pandas中对col1和col2重复行的第三列值求和

Pandas实现重复组合列的数值求和方案

最直接的实现方式是结合groupby()和sum()函数,这是处理这类分组聚合需求的标准操作:

示例代码

假设你的DataFrame名为df,包含col1、col2、col3三列:

import pandas as pd

# 模拟原始数据集
data = {
    'col1': ['A', 'A', 'B', 'B', 'A'],
    'col2': ['X', 'X', 'Y', 'Z', 'Y'],
    'col3': [10, 20, 15, 5, 25]
}
df = pd.DataFrame(data)

# 核心操作:按col1+col2分组后对col3求和
result_df = df.groupby(['col1', 'col2'])['col3'].sum().reset_index()
print(result_df)

关键步骤说明

  • groupby(['col1', 'col2']):指定以col1和col2的唯一组合作为分组依据,自动识别重复组合
  • ['col3'].sum():对每个分组内的col3列数值执行求和计算
  • .reset_index():将分组后的复合索引(col1、col2)转换为普通列,得到结构规整的结果表

替代方案:使用pivot_table()

如果需要更灵活的聚合配置(比如同时计算多个统计量),可以用pivot_table()实现相同效果:

result_df = pd.pivot_table(df, values='col3', index=['col1', 'col2'], aggfunc='sum').reset_index()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 16:31:18