Python中的rank是什么?

5

我对Python中的rank很好奇。下面打印输出是如何得到的呢?rank对数据做了什么?

Input obj = pd.Series([7,-5,7,4,2,0,4])

输出:

    print(obj)
    0    7
    1   -5
    2    7
    3    4
    4    2
    5    0
    6    4

排名

    print(obj.rank())
    0    6.5
    1    1.0
    2    6.5
    3    4.5
    4    3.0
    5    2.0
    6    4.5
1个回答

5

根据官方Pandas文档,它执行以下操作:

沿轴计算数值数据排名(1到n)。相等的值被分配一个排名,该排名是这些值排名的平均值

这意味着基本上所有值都被分配了“高分”。 值7最高,因此获得最高排名,但由于值7出现了两次,它既获得了高分7又获得了高分6。 但是,由于值7不能有2个不同的“高分”,因此它被分配了两个排名的平均值。 (6 + 7)/ 2为6.5->这是数据值7的排名。 其他值更直接,例如-5是最低的,因此获得最差的排名。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接