如何使用Pandas中的Pivot Table对A列同名项的B列值求和
Pandas 透视表实现分组求和
原始数据
| A | B |
|---|---|
| First | 1 |
| Second | 1 |
| First | 2 |
| Second | 3 |
期望输出
| A | B |
|---|---|
| First | 3 |
| Second | 4 |
解决方案
使用pandas.pivot_table(),通过指定分组键、聚合列和求和函数即可实现:
import pandas as pd # 基于现有df生成结果 pivot_result = pd.pivot_table( df, index='A', # 按列A分组 values='B', # 对列B进行聚合 aggfunc='sum' # 聚合方式为求和 ).reset_index() # 将索引列A转回普通列,匹配期望结构 print(pivot_result)
说明
index='A':指定以列A的唯一值作为分组依据values='B':明确要计算的目标列是Baggfunc='sum':对每组内的B值求和,得到每组的总合reset_index():默认透视表会把分组列设为索引,用此方法将其恢复为普通列,与目标输出格式一致
内容的提问来源于stack exchange,提问作者Divy Shah
相关产品推荐
相关产品推荐

