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

Pandas多列设置多级索引无效问题求助

问题解决:set_index后多级索引未生效的原因及修复方法

问题出在set_index()的默认行为上:这个方法不会直接修改原DataFrame,而是返回一个已经设置好索引的新DataFrame对象。你没有将这个新对象重新赋值给projection,所以原变量的索引没有发生变化。

有两种修复方式:

  • 方式一:重新赋值变量(推荐)
    将set_index()的返回结果赋值给projection,覆盖原变量:

    projection = projection.set_index(['<DATE>', '<TIME>'])
    
  • 方式二:使用inplace参数直接修改原对象
    在调用set_index()时添加inplace=True参数,直接在原DataFrame上修改索引:

    projection.set_index(['<DATE>', '<TIME>'], inplace=True)
    

注意:更推荐方式一,因为inplace=True的操作会跳过一些pandas的内部校验,且不利于链式代码编写,容易引发意外的数据修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 14:02:01