转换数据框列并保留原始

时间:2019-02-25 07:19:28

标签: pandas

如果我有一个包含3列A,B,C的数据框

是否可以获取这些列的排名,但保留原始列。

如此df

A   B   C
3   4   2
1   2   3

df.add_suffix('_Rank')=df.rank(axis=1)


A   B   C  A_Rank   B_Rank    C_Rank
3   4   2    2       3           1
1   2   3    1        2          3

1 个答案:

答案 0 :(得分:1)

joinadd_suffix一起使用在右侧:

df = df.join(df.rank(axis=1).add_suffix('_Rank'))

或在新列的列名称中添加_Rank

df[df.columns + '_Rank'] = df.rank(axis=1)
print (df)
   A  B  C  A_Rank  B_Rank  C_Rank
0  3  4  2     2.0     3.0     1.0
1  1  2  3     1.0     2.0     3.0