如何用熊猫中的其他值重命名多索引索引值?

时间:2020-04-20 06:34:42

标签: python pandas

我有一个熊猫DataFrame MultiIndex:

f1  f2  value
2   3   5
3   3   4
4   1   3
    4   3

我希望有一个输出将f2替换为:

f value
1  A
2  B
3  C
4  D

所以输出应如下所示:

f1  f2  value
2   C   5
3   C   4
4   A   3
    D   3

您能建议一种创建输出的优雅方法吗?

1 个答案:

答案 0 :(得分:2)

使用MultiIndex.set_levels

new = df.index.levels[1].map(df1.set_index('f')['value'])

df.index = df.index.set_levels(new, level=1)
print (df)
       value
f1 f2       
2  C       5
3  C       4
4  A       3
   D       3
相关问题