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

如何在Pandas中实现类似Excel SUMIFS的逐行关联分组求和功能

Pandas实现等效Excel SUMIFS的分组汇总列追加方案

实现该需求的核心是使用groupby + transform组合,不需要手动枚举任何分组值,会自动将分组求和结果回填到对应分组的每一行,和Excel SUMIFS的逻辑完全一致。

核心实现代码

假设你的原始DataFrame包含date(日期)、product(产品)、sales(单条记录销量)三个字段,实现代码如下:

import pandas as pd

# 按【日期+产品】两个条件分组,对销量求和后回填到原表每一行
df['daily_product_total_sales'] = df.groupby(['date', 'product'])['sales'].transform('sum')

逻辑说明

  • groupby中传入的列就是你需要匹配的条件列,和Excel SUMIFS中依次添加的判断条件完全对应,如有更多匹配维度,直接在列表中追加列名即可
  • transform('sum')不会将数据聚合为独立的汇总表,会自动将每个分组的求和结果匹配到该分组的所有原始行,完全符合你要的在原记录旁追加汇总值的需求

可运行测试样例

你可以用下面的样例验证效果:

# 构造测试数据
data = {
    'date': ['2023-01-01', '2023-01-01', '2023-01-01', '2023-01-02', '2023-01-02'],
    'product': ['apple', 'apple', 'orange', 'apple', 'orange'],
    'sales': [10, 20, 15, 5, 25]
}
df = pd.DataFrame(data)

# 执行汇总逻辑
df['daily_product_total_sales'] = df.groupby(['date', 'product'])['sales'].transform('sum')
print(df)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 11:45:02