当我们处理和分析大量的数据时,排序是一个非常常见的操作。在Python Pandas中,我们可以使用多种方法完成数据排序操作。
以下是 Python Pandas 数据排序的几种常用方法:
方法一:sort_values()函数
sort_values()函数可以按照指定的列或行进行排序,将数据框(DataFrame)中的数据按照指定的顺序重新排列,并返回排序后的结果。其语法如下:
DataFrame.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last')
参数说明:
- by:按照某列或者多列排序,可以是str或者list类型。
- axis:按行或列排序,0表示按列排序(默认),1表示按行排序。
- ascending:排序的方式,True表示升序(默认),False表示降序。
- inplace:是否修改原对象,默认为False,不修改原对象。
- kind:排序算法类型,默认值为 ‘quicksort’。
- na_position:缺失值排序位置:’last’表示将缺失值放到末尾(默认),’first’表示将缺失值放到最前面。
示例1:按某一列进行升序排序
import pandas as pd
data = {'name': ['张三', '李四', '王五', '赵六'],
'age': [23, 24, 22, 25],
'gender': ['M', 'F', 'M', 'M']}
df = pd.DataFrame(data)
print(df.sort_values(by='age'))
示例2:按多个列进行排序
import pandas as pd
data = {'name': ['张三', '李四', '王五', '赵六'],
'age': [23, 24, 22, 25],
'gender': ['M', 'F', 'M', 'M']}
df = pd.DataFrame(data)
print(df.sort_values(by=['age', 'name']))
方法二:sort_index()函数
sort_index()函数用于按照index进行排序,其语法如下:
DataFrame.sort_index(axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last')
参数说明:
- axis:按行或列排序,0表示按列排序(默认),1表示按行排序。
- level:指定多层索引中排序的级别,如果没有多级索引,则为None。
- ascending:排序的方式,True表示升序(默认),False表示降序。
- inplace:是否修改原对象,默认为False,不修改原对象。
- kind:排序算法类型,默认值为 ‘quicksort’。
- na_position:缺失值排序位置:’last’表示将缺失值放到末尾(默认),’first’表示将缺失值放到最前面。
示例:按照index进行降序排序
import pandas as pd
data = {'name': ['张三', '李四', '王五', '赵六'],
'age': [23, 24, 22, 25],
'gender': ['M', 'F', 'M', 'M']}
df = pd.DataFrame(data, index=['c', 'a', 'b', 'd'])
print(df.sort_index(ascending=False))
以上就是 Python Pandas 数据排序的几种常用方法,相信通过这篇文章的学习,大家已经掌握了如何使用 Pandas 对数据进行排序的方法。