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

如何使用Pandas按指定列分组,仅当另一列值相同时合并并求和?

解决方案:按多列分组并对指定列求和

你需要的是同时按A列和B列分组,仅当两列值都相同时才合并行并对C列求和,用Pandas的groupby方法就能轻松实现:

import pandas as pd

# 构造示例数据
test = pd.DataFrame({'A':['0','0','0','1'],'B':['AAA','AAA','BBB','CCC'],'C':[0.5,0.2,0.3,0.1]})

# 按A、B分组,对C列求和,保留原列结构
result = test.groupby(['A', 'B'], as_index=False)['C'].sum()
print(result)

运行后得到的结果完全符合你的需求:

A    B    C
0  0  AAA  0.7
1  0  BBB  0.3
2  1  CCC  0.1

关键说明

  • groupby(['A', 'B']):将A和B值完全匹配的行划分为同一组,这正好满足你"仅当B列值也相同时才求和"的要求
  • as_index=False:避免把分组列设置为DataFrame的索引,保持和原数据一致的列格式
  • ['C'].sum():仅对C列执行求和操作,其他分组列保留唯一值

内容的提问来源于stack exchange,提问作者ant.kr

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 00:37:29