Python函数:rank()

函数形式:

DataFrame.rank(axis=0, method='average', numeric_only=NoDefault.no_default, na_option='keep', ascending=True, pct=False)

沿轴计算数值数据等级(1到n)。默认情况下,相等的值被分配一个等级,这个等级是这些值的等级的平均值。

  • axis:直接排名索引。
  • method:如何对具有相同值(即平局)的记录组进行排名:

                                          average:组的平均排名

                                          min:组中的最低排名

                                          max:组中的最高排名

   first:按照它们在数组中出现的顺序分配的等级

dense:类似于“min”,但组间排名总是增加 1

  • numeric_only:对于DataFrame对象,如果设置为True,则只对数字列排序。
  • na_option:如何对NaN值进行排序。top:给NaN值分配最低等级;bottom:给NaN值赋最高等级;keep:给NaN值赋NaN
  • ascending:元素是否应该按升序排列。
  • pct:是否以百分比形式显示返回的排名。

返回值:返回一个Series或DataFrame的值。

来,上例子:

>>> import pandas as pd
>>> import numpy as np
>>> df = pd.DataFrame(data={'Animal': ['cat', 'penguin', 'dog',
...                                    'spider', 'snake'],
...                         'Number_legs': [4, 2, 4, 8, np.nan]})
>>> df
    Animal  Number_legs
0      cat          4.0
1  penguin          2.0
2      dog          4.0
3   spider          8.0
4    snake          NaN

 下面的示例展示了该方法如何处理上述参数:

  • default_rank:这是不使用任何参数获得的默认行为
  • max_rank:设置方法= 'max'有相同值的记录使用最高的排名(例如:因为猫和狗都在第二和第三位,排名均为3。)
  • NA_bottom: 选择na_option = 'bottom',如果有带有NaN值的记录,它们将被放在排名的底部。

pandas.DataFrame.rank — pandas 1.4.1 documentation

你可能感兴趣的:(Python,python,开发语言,后端)