我有一个pandas数据框,其中一列包含实际值。我希望在此数据框中有一个新列,其中包含整数,表示来自另一列的实数的位置。例如,1意味着具有实数的列中的实数是最大的,而2意味着第二大,依此类推。
答案 0 :(得分:2)
DataFrame有一个rank
方法:
import pandas as pd
df = pd.DataFrame({'a': np.random.randint(0,100,10)})
df['rank'] = df.rank(ascending=False)
a rank
0 16 8
1 91 1
2 58 4
3 36 6
4 15 9
5 69 3
6 35 7
7 78 2
8 48 5
9 5 10
请务必检查可选的method
关键字,该关键字在值相等的情况下设置行为。