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

如何在Pandas透视表中添加各项目的整体均值列?

如何在Pandas透视表中添加整体均值列?

你可以通过两种方式实现需求:

方法一:直接在透视表中启用margins参数

Pandas的pivot_table自带margins参数,开启后会自动添加汇总列,指定margins_name可自定义列名:

df_total_pv = pd.pivot_table(
    df_total,
    index='Subject',
    columns='Judge',
    values=['item1','item2','item3'],
    aggfunc='mean',
    margins=True,  # 启用汇总功能
    margins_name='整体均值'  # 自定义汇总列名称
)

该方法会直接在透视表最右侧添加整体均值列,自动计算每个Subject下对应item的所有评委得分平均值,完全匹配你的需求结构。

方法二:单独计算整体均值后合并(更灵活)

若需要自定义整体均值的计算逻辑,可单独计算后合并到原透视表:

  1. 先计算每个Subject下各item的整体均值:
df_overall_mean = df_total.groupby('Subject')[['item1','item2','item3']].mean().rename(columns=lambda x: (x, '整体均值'))
  1. 合并到原透视表:
df_total_pv = pd.concat([df_total_pv, df_overall_mean], axis=1)

这种方式支持对整体均值做更多自定义调整,比如加权平均等,适合复杂计算场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 06:54:54