Python数据分析Pandas Dataframe排序操作

来自:网络
时间:2022-05-14
阅读:
目录

前言:

数据的排序是比较常用的操作,DataFrame 的排序分为两种,一种是对索引进行排序,另一种是对值进行排序,接下来就分别介绍一下。

1.索引的排序

DataFrame 提供了sort_index()方法来进行索引的排序,通过axis参数指定对行索引排序还是对列索引排序,默认为0,表示对行索引排序,设置为1表示对列索引进行排序;ascending参数指定升序还是降序,默认为True表示升序,设置为False表示降序,

具体使用方法如下:

Python数据分析Pandas Dataframe排序操作

对行索引进行降序排序:

sort_df = df.sort_index(ascending=False)
sort_df

Python数据分析Pandas Dataframe排序操作

对列索引升序排序:

sort_df = df.sort_index(axis=1)
sort_df

Python数据分析Pandas Dataframe排序操作

2.值的排序

DataFrame 提供了sort_values()方法来进行值的排序,相比sort_index()方法,它多了一个by参数,接收字符串或者列表,来指定要排序的行或者列名,其余基本一致,具体使用方法如下:

按age的值进行升序排序:

sort_df = df.sort_values(by="age")
sort_df

Python数据分析Pandas Dataframe排序操作

先按age的值进行升序排序,再按gender的值进行降序排序:

sort_df = df.sort_values(by=["age", "gender"], ascending=[True, False])
sort_df

结果输出如下:

Python数据分析Pandas Dataframe排序操作

排序完之后,如果想要调整一下行索引,可以使用以下方式重新设置一下行索引。

frame.reset_index(drop=True)

设置参数drop=True表示删除原索引,如果不想删除原索引,只是再加一列索引即可,可以不设定,如下:

Python数据分析Pandas Dataframe排序操作

返回顶部
顶部