gpt4 book ai didi

python - pandas 对重复值进行排名

转载 作者:行者123 更新时间:2023-12-01 01:20:56 25 4
gpt4 key购买 nike

让我们获取一个具有随机值的一列数据帧。我想获得所有这些值的排名,这很容易通过执行以下操作:

df.rank()

但是,如果存在重复的值,您的排名也会得到重复的值。例如,对于给定的数字列表:

[127.0, 131.856, 132.88, 126.249, 128.417, 124.336, 131.856, 130.624, 147.906, 134.412, 130.735, 133.433, nan, 125.59, 130.211, 133.847, 137.431, 130.0, 127.4, 132.226, 138.134]

排名函数的输出将是:

[4.0, 11.5, 14.0, 3.0, 6.0, 1.0, 11.5, 8.0, 20.0, 17.0, 9.0, 15.0, nan, 2.0, 7.0, 16.0, 18.0, 10.0, 5.0, 13.0, 19.0]

如您所见,位置 1 和 6 是相同的,完整列表中没有 11 或 12。即使哪个数字排在第一位,我们如何才能获得这些数字的排名?

最佳答案

使用rank中的method参数,例如:

pd.Series(l).rank(method='first')

0 4.0
1 11.0
2 14.0
3 3.0
4 6.0
5 1.0
6 12.0
7 9.0
8 20.0
9 17.0
10 10.0
11 15.0
12 2.0
13 8.0
14 16.0
15 18.0
16 7.0
17 5.0
18 13.0
19 19.0
dtype: float64

关于python - pandas 对重复值进行排名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53851739/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com