添加后缀以复制索引值

时间:2018-01-12 20:45:36

标签: python pandas

这是一个df:

-0.01   -0.029064
-0.01   -0.032876
-0.01   -0.040795
-0.02   -0.027003
-0.02   -0.0315

需要将其与另一帧连接,但得到错误“无法从重复的轴重新索引”。我想要的是这样的df:

-0.01   -0.029064
-0.011   -0.032876
-0.012   -0.040795
-0.02   -0.027003
-0.021   -0.031589

(注意:在每个重复索引后添加后缀)

1 个答案:

答案 0 :(得分:1)

要获得这些累积计数,请使用groupby + cumcount

v = df.groupby(df.index)\
      .cumcount()\
      .astype(str)\
      .str.replace('0', '')\
      .values

v 
array(['', '1', '2', '', '1'], dtype=object)

与索引连接:

df.index = (df.index.values.astype(str) + v).astype(float)
df

           Value
-0.010 -0.029064
-0.011 -0.032876
-0.012 -0.040795
-0.020 -0.027003
-0.021 -0.031500