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

如何将pandas透视表(pivot_table)中的数值字段调整为按行展示

你需要将透视表列层级中代表指标的Price、Transactions层,从列索引移到行索引即可,有两种常用实现方式:

方式1:在原有代码基础上调用stack调整层级

原有代码生成透视表后,加一行堆叠操作即可,若需要调整Transactions和Price的显示顺序,修改values参数的先后顺序即可:

# 把values调整为Transactions在前,和预期输出顺序一致
table = pd.pivot_table(data=df,index=['Name'],columns=['Date'],values=['Transactions','Price'])
# 把列索引最上层(level=0,也就是指标层)堆叠到行索引
table = table.stack(level=0)

方式2:先融合数据再生成透视表,一步得到结果

先通过melt把两个指标列转为行维度,再做透视:

# 先把宽表转成长表,把Transactions、Price转为行维度的指标
df_melt = df.melt(id_vars=['Name','Date'], value_vars=['Transactions','Price'], var_name='Indicator')
# 直接按Name+指标做行索引,日期做列索引生成透视表
table = df_melt.pivot(index=['Name','Indicator'], columns='Date', values='value')

两种方法输出的结果都和你预期的格式完全匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 13:18:04