如何在python / pandas中修改部分索引名称?

时间:2019-05-05 23:54:25

标签: python python-3.x pandas dataframe

我需要将此练习数据集的索引中的一部分从单词"low"更改为"down"

我尝试搜索一些解决方案,但这主要是重命名整个索引。我只是想重命名其中的一小部分。

                         NUM          Npc      Value    
OOF_Mic.Y9_low_of_XX    +0.4206969    Nil     0.000666  
OOF_Mic.Y5_low_of_XX    +0.4206969    Nil     0.000666  
OOF_Mic.Y7_low_of_XX    +0.4206969    Nil     0.000666

3 个答案:

答案 0 :(得分:1)

您可以使用DataFrame.index来调用索引,我们可以使用str.replacelow部分替换为down

df.index = df.index.str.replace('low', 'down')

print(df)
                            NUM  Npc     Value
idx                                           
OOF_Mic.Y9_down_of_XX  0.420697  Nil  0.000666
OOF_Mic.Y5_down_of_XX  0.420697  Nil  0.000666
OOF_Mic.Y7_down_of_XX  0.420697  Nil  0.000666

答案 1 :(得分:0)

尝试:

df.index = df.index.str.replace('_low_', '_down_')

如果您确定low从未出现在其他任何地方,则可以跳过两者中的_

答案 2 :(得分:0)

我发现了两种方法:

[[106.00,-50.00],[109.00,-34.00],[101.00,-29.00],[105.00,-26.00],
[116.00,-30.00],[114.00,-50.00],[106.00,-50.00] ]

或:

df.index = df.index.astype(str).str.replace('low', 'down')
df

    NUM Npc Value
OOF_Mic.Y9_down_of_XX   0.420697    Nil 0.000666
OOF_Mic.Y5_down_of_XX   0.420697    Nil 0.000666
OOF_Mic.Y7_down_of_XX   0.420697    Nil 0.000666