替换 MultiIndex 中的值(pandas)

2024-01-05

在下面的DataFrame中:我如何替换["x2", "Total"] with ["x2", "x2"]离开x1 as is?

l1           900    902    912     913    916     
l2           ИП ПС  ИП ПС  ИП  ПС  ИП ПС  ИП ПС  
i1    i2                                      
x1    Total  10  6   3  3  10  16   2  9   3  8  
x2    Total   1  0   0  0   0   0   0  0   0  0  

.rename将替换所有"Total"价值观,而不仅仅是我需要的价值观。


假设您的数据帧称为 df,以下代码将通过用修改后的索引替换现有索引来执行您所需的替换。

index = df.index
names = index.names
index = df.index.tolist()[:1]+[('x2','x2')]  
df.index = pd.MultiIndex.from_tuples(index, names = names)

或者也可以直接修改索引的内部层级:

df.index.set_levels([u'Total', u'x2'],level=1,inplace=True)
df.index.set_labels([0, 1],level=1,inplace=True)

您还可以使用level='i2'代替level=1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

替换 MultiIndex 中的值(pandas) 的相关文章

随机推荐