【问题标题】:Change some levels in a MultiIndex更改 MultiIndex 中的某些级别
【发布时间】:2014-09-11 09:11:38
【问题描述】:

我有一个 DataFrame df,它的 df.columns 是一个分层的 MultiIndex idx(有 2 层)。

idx = df.columns

这个 idx.levels 是一个 FrozenList 与

len(idx.levels) == 2

idx.levels[0] 很好,idx.levels[1] 是一个 Index 对象,有 9 个元素。 dtype='对象'。

idx.levels[1] == Index(['Foo1', 'Foo2', 'Foo3', 'Foo4', 'Foo5', 'Foo6', 'Foo7', 'Foo8', 'Foo9'], dtype='object')

我需要将“Foo4”和“Foo5”都重命名为“x1”,将“Foo3”重命名为“x2”

我该怎么做?当然,我需要原始数据框来反映这些变化。

【问题讨论】:

    标签: python pandas multi-index


    【解决方案1】:

    可以使用DataFrame的rename方法:

    df = df.rename(columns={'Foo4':'x1', 'Foo5':'x1', 'Foo3':'x2'})
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-02-09
      • 2015-05-22
      • 1970-01-01
      • 2021-05-28
      • 2019-07-17
      • 2020-11-29
      • 2012-12-20
      相关资源
      最近更新 更多