Python Pandas 索引排序 df.sort_index()的实现

df.sort_index()实现按索引排序,默认以从小到大的升序方式排列,如希望按降序排列,传入ascending = False

import pandas as pd
 
df = pd.DataFrame([['liver','E',89,21,24,64],
                   ['Arry','C',36,37,37,57],
                   ['Ack','A',57,60,18,84],
                   ['Eorge','C',93,96,71,78],
                   ['Oah','D',65,49,61,86]
                  ], 
                   columns = ['name','team','Q1','Q2','Q3','Q4'])
 
# 索引降序
res1 = df.sort_index(ascending=False)
 
# 按列索引名排序:
# 在索引方向上排序
res2 = df.sort_index(axis=1, ascending=False)

结果展示

df

Python Pandas 索引排序 df.sort_index()的实现

res1

Python Pandas 索引排序 df.sort_index()的实现

res2

Python Pandas 索引排序 df.sort_index()的实现

扩展

# 更多方法如下:
s.sort_index() # 升序排列
df.sort_index() # df也是按索引进行排序
df.team.sort_index()
s.sort_index(ascending=False) # 降序排列
s.sort_index(inplace=True) # 排序后生效,改变原数据
# 索引重新0-(n-1)排,可以得到它的排序号
s.sort_index(ignore_index=True)
s.sort_index(na_position='first') # 空值在前,另'last'表示空值在后
s.sort_index(level=1) # 如果多层,排一级
s.sort_index(level=1, sort_remaining=False) # 这层不排
# 行索引排序,表头排序
df.sort_index(axis=1) # 会把列按列名顺序排序

df.reindex()指定自己定义顺序的索引,实现行和列的顺序重新定义

import pandas as pd
 
df = pd.DataFrame({
        'A':[1,2,3],
        'B':[4,5,6]
        },index=['a','b','c'])
 
# 按要求重新指定索引顺序
res1 = df.reindex(['c','b','a'])
 
# 指定列顺序
res2 = df.reindex(['B','A'], axis=1)

结果展示

df

Python Pandas 索引排序 df.sort_index()的实现

res1

Python Pandas 索引排序 df.sort_index()的实现

res2

Python Pandas 索引排序 df.sort_index()的实现

本文从CSDN(点击查看原文)转载而来。不代表烟海拾贝立场,如若转载,请注明出处:https://somirror.com/4924.html

(0)
上一篇 2023-02-09 10:38
下一篇 2023-02-09 16:56

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注