5

我有一个类似于以下结构的 pandas DataFrame:

Name    Location    Position   Data1    Data2
Foo     loc1        12345      present  absent
Foo2    loc2        67890      absent   present

其中Name和是 MultiIndex 级别LocationPosition但是我需要重命名索引的一个级别:对于这个例子,我需要更改Foo2Bar.

我认为DataFrame.rename()会做这项工作,但是如果我指定

new_df = old_df.rename(index={"Foo2": "Bar"})

它并没有真正改变索引,更糟糕的是,它使索引变平。

我想做的事可能吗?还是我遇到了熊猫虫?

4

1 回答 1

4

rename函数应将字典转换为映射器并将其应用于每个索引。但是,对于这种MultiIndex情况,它只遍历每个元组而不是每个索引。我已经修复它并提出了拉取请求

于 2013-03-25T19:16:42.713 回答