如何在Dataframe中保存排序顺序?

时间:2017-06-03 06:08:52

标签: python sorting pandas dataframe

我想添加一个新列来保存排序顺序,该顺序按Dataframe中的一列排序。例如,我想按列'B'(升序)排序并添加新列'C'以保存排序顺序。这意味着我想获得一个列'C',即[4,3,1,2,4,2]

df=pd.DataFrame({"A":[1,2,3,4,5,6],"B":[5,2,0,1,5,1]})

1 个答案:

答案 0 :(得分:0)

尝试rankmethod='dense',以便群组之间的排名始终增加1:

import pandas as pd
df=pd.DataFrame({"A":[1,2,3,4,5,6],"B":[5,2,0,1,5,1]})
df['C']=df['B'].rank(method='dense')
df

输出:

    A   B   C
0   1   5   4
1   2   2   3
2   3   0   1
3   4   1   2
4   5   5   4
5   6   1   2