Python Pandas Dataframe.rank()

Python Pandas Dataframe.rank()

Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。

Pandas Dataframe.rank()方法返回所传递的系列中每个索引的等级。排名是在排序后的位置基础上返回的。

语法:
DataFrame.rank(axis=0, method=’average’, numeric_only=None, na_option=’keep’, ascending=True, pct=False)

参数:
axis: 0或’index’代表行,1或’column’代表列。
method: 接受一个字符串输入(‘average’, ‘min’, ‘max’, ‘first’, ‘dense’),告诉pandas如何处理相同的值。默认值是平均数,这意味着将等级的平均值分配给相似的值。
numeric_only:取一个布尔值,只有当它为False时,等级函数才对非数字值起作用。
na_option:接收3个字符串输入(‘keep’, ‘top’, ‘bottom’)来设置空值的位置,如果在传递的系列中有空值的话。
ascending:布尔值,如果为真,则按升序排列。
pct:布尔值,如果为真,则按百分比排名。

返回类型。系列,包括调用者系列的每个索引的等级。

例子#1:有唯一值的排行栏

在下面的例子中,创建了一个新的排名列,对每个球员的名字进行排名。Name列中的所有值都是唯一的,因此没有必要描述一个方法。

# importing pandas package
import pandas as pd
  
# making data frame from csv file
data = pd.read_csv("nba.csv")
  
# creating a rank column and passing the 返回值ed rank series
data["Rank"] = data["Name"].rank()
  
# display
data
  
# sorting w.r.t name column
data.sort_values("Name", inplace = True)
  
# display after sorting w.r.t Name column
data

输出:
如图所示,每一个名字的等级都被创建了一个列的等级。在sort_value函数对数据框架进行排序后,可以看到等级也被排序了,因为这些只是名字的排序。

分拣前-
Python Pandas Dataframe.rank()

分类后 –
Python Pandas Dataframe.rank()

例子2:用一些类似的值对列进行排序

在下面的例子中,数据框架首先按照球队名称进行排序,首先使用默认方法(即平均法),因此同一球队球员的排名是平均的。之后,还使用了min方法来查看输出结果。

# importing pandas package
import pandas as pd
  
# making data frame from csv file
data = pd.read_csv("nba.csv")
  
# sorting w.r.t team name
data.sort_values("Team", inplace = True)
  
# creating a rank column and passing the 返回值ed rank series
# change method to 'min' to rank by minimum
data["Rank"] = data["Team"].rank(method ='average')
  
# display
data

输出:

**With method=’average’ **
Python Pandas Dataframe.rank()

With method=’min’
Python Pandas Dataframe.rank()

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程