python pandas 数据排序的几种常用方法

  • Post category:Python

当我们处理和分析大量的数据时,排序是一个非常常见的操作。在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 对数据进行排序的方法。