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

如何让Pandas按多层索引分组后所有行重复展示各级索引值?

Pandas多索引全量显示解决方案

方案1:单次临时生效

仅针对当前输出调整,不影响全局配置,推荐使用上下文管理器实现:

res = df.groupby([pd.Grouper(level=1), "A"]).sum()
# 仅在with代码块内生效
with pd.option_context('display.multi_sparse', False):
    print(res)

执行后输出效果如下,second层级索引会在每一行完整显示:

B
second A   
one    1  2
one    2  4
one    3  6
two    1  4
two    2  5
two    3  7

方案2:全局配置生效

如果需要所有多索引默认都全量显示,修改全局配置项即可:

# 开启全量显示多索引值
pd.set_option('display.multi_sparse', False)

需要恢复默认合并显示效果时,执行以下代码即可:

pd.set_option('display.multi_sparse', True)

配置说明:display.multi_sparse是Pandas控制多索引/多列名显示的核心参数,默认值为True,即仅在索引值变化时展示对应层级内容,修改为False后会在每一行完整展示所有层级的索引值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 08:48:02