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

如何重置多层索引DataFrame所有索引 解决reset_index失效问题

解决方法

你之前的代码无法生效的原因很简单:reset_index() 只处理行索引,根本不会改动列的多级索引:

  • 不加参数的reset_index()会把原行索引转成普通列存下来,列的多级索引完全保留;
  • 加了drop=True的版本只会把行索引换成整数,列上的多层索引还是原样,自然达不到你要的效果。

最简实现

直接提取纯数值重建DataFrame,一步得到行列都是默认整数索引的结果:

import pandas as pd
df = pd.DataFrame(df.to_numpy())

分步实现

如果想逻辑更清晰,分别处理行和列的索引也可以:

# 重置行索引:丢弃原行索引,替换为0开头的整数索引
df = df.reset_index(drop=True)
# 重置列索引:覆盖原多级列索引,替换为0开头的整数索引
df.columns = range(df.columns.size)

两种方法得到的结果完全一致,所有原行列的索引层级、索引名称都会被清除,只保留纯数值内容,和你给出的预期输出完全匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 09:27:14