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

Python Pandas:按A、B分组并针对E各值汇总C、D的优化方案

更优的Pandas分组求和实现方式

你可以直接通过多层分组的方式一次性完成计算,完全不需要循环,性能和代码简洁性都能得到大幅提升:

核心实现代码

# 一次性按A、B、E分组,对C、D列求和
grouped_sum = df.groupby(['A', 'B', 'E'])[['C', 'D']].sum()

后续按需提取结果

如果需要单独获取某个E值对应的A、B分组求和结果,直接用索引提取即可:

# 获取E=目标值的分组求和结果
specific_e_result = grouped_sum.xs('目标E值', level='E')

如果需要把所有E值对应的结果分别存入字典,用字典推导式快速生成:

e_results = {e: grouped_sum.xs(e, level='E') for e in df['E'].unique()}

为什么这方法更优

  • 性能更高:避免了循环中重复的DataFrame切片和分组操作,pandas一次性完成所有分组计算,数据量越大优势越明显
  • 结构规整:得到的多层索引结果便于后续的筛选、合并等操作
  • 代码简洁:一行核心代码替代循环逻辑,可读性更强

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 13:39:56