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

Pandas索引排序 df.sort_index()的实现_第1张图片

res1

Pandas索引排序 df.sort_index()的实现_第2张图片

res2

Pandas索引排序 df.sort_index()的实现_第3张图片

扩展

# 更多方法如下:
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

Pandas索引排序 df.sort_index()的实现_第4张图片

res1

Pandas索引排序 df.sort_index()的实现_第5张图片

res2

Pandas索引排序 df.sort_index()的实现_第6张图片

到此这篇关于Pandas索引排序 df.sort_index()的实现的文章就介绍到这了,更多相关Pandas索引排序 df.sort_index()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Pandas索引排序 df.sort_index()的实现)