Renaming columns in a Pandas dataframe with duplicate column names?

后端 未结 4 905
面向向阳花
面向向阳花 2021-01-04 20:19

I have a df X with columns with duplicate names:

In [77]: X_R
Out[77]: 
      dollars  dollars
   0   0.7085   0.5000

I want to rename it

4条回答
  •  天涯浪人
    2021-01-04 21:10

    Here is a dynamic solution:

    In [59]: df
    Out[59]:
       a  x  x  x  z
    0  6  2  7  7  8
    1  6  6  3  1  1
    2  6  6  7  5  6
    3  8  3  6  1  8
    4  5  7  5  3  0
    
    In [60]: d
    Out[60]: {'x': ['x1', 'x2', 'x3']}
    
    In [61]: df.rename(columns=lambda c: d[c].pop(0) if c in d.keys() else c)
    Out[61]:
       a  x1  x2  x3  z
    0  6   2   7   7  8
    1  6   6   3   1  1
    2  6   6   7   5  6
    3  8   3   6   1  8
    4  5   7   5   3  0
    

提交回复
热议问题