Python | Pandas data frame.sort_values()| Set-2
原文:https://www.geesforgeks.org/python-pandas-data frame-sort_values-set-2/
先决条件:熊猫数据帧. sort_values() | Set-1
Python 是进行数据分析的优秀语言,主要是因为以数据为中心的 Python 包的奇妙生态系统。熊猫就是其中的一个包,让导入和分析数据变得容易多了。
熊猫sort_values()
函数按照传递列的升序或降序对数据帧进行排序。它不同于排序的 Python 函数,因为它不能对数据框进行排序,也不能选择特定的列。
我们来讨论一下**Dataframe.sort_values()**
多参数排序:
语法:
DataFrame.sort_values(by,axis=0,升序=True,inplace=False,kind='quicksort ',na_position='last ')
有关代码中使用的 CSV 文件的链接,请单击此处的。
示例#1: 按姓名和团队排序 在以下示例中,数据框由 csv 文件构成,数据框按团队升序排序,在每个团队中,姓名也按升序排序。
分类前–
#importing pandas package
import pandas as pd
#making data frame from csv file
data=pd.read_csv("nba.csv")
#sorting data frame by Team and then By names
data.sort_values(["Team", "Name"], axis=0,
ascending=True, inplace=True)
#display
data
输出:
排序后–
#importing pandas package
import pandas as pd
#making data frame from csv file
data=pd.read_csv("nba.csv")
#sorting data frame by Team and then By names
data.sort_values(["Team", "Name"], axis=0,
ascending=True, inplace=True)
#display
data
如图所示,团队首先按升序排序,然后每个团队名称的名称按升序排序。
例 2: 将列表传递给升序参数
如上面的示例所示,通过将列表传递给“by”参数,可以针对多列对数据框进行排序。我们还可以向“升序”参数传递一个列表,告诉熊猫该如何对哪一列进行排序。 “升序”参数中布尔型的索引应与“by”参数中列名的索引相同。
#importing pandas package
import pandas as pd
#making data frame from csv file
data=pd.read_csv("nba.csv")
#sorting data frame by Team and then By names
data.sort_values(["Team", "Name"], axis=0,
ascending=[True,False], inplace=True)
#display
data
如下图所示,数据框按团队名称升序排序,对于每个团队名称,名称按降序排序。
示例#3: 使用 3 列排序
在以下示例中,同一数据框按团队名称排序。对于每个团队,数据框按年龄排序,对于每个相同的年龄,数据框按身高排序。本示例将解释多参数排序在数据框中是如何工作的。
#importing pandas package
import pandas as pd
#making data frame from csv file
data=pd.read_csv("nba.csv")
#sorting data frame by Team, age and height
data.sort_values(["Team", "Age", "Height"], axis=0,
ascending=[False,True,False],
inplace=True)
#display
data
如图所示,首先对团队名称进行排序,然后是年龄,对于每个年龄,对身高进行排序。在“华盛顿奇才”队中,有 3 名 30 岁的球员。这 3 个人按照身高升序排列。