本文主要讲series和dataframe如何根据索引或者是值进排序
series排序series = pd.Series([3, 2, 4, 1, 6, 7], index=['b', 'a', 'd', 'c', 'e', 'f'])
print(series)
print('---series通过索引进行排序(排序时默认升序,ascending=False 降序)---')
print(series.sort_index())
print('---series通过值进行排序---')
print(series.sort_values())
---------------输出结果---------------------------
b 3
a 2
d 4
c 1
e 6
f 7
dtype: int64
---series通过索引进行排序---
a 2
b 3
c 1
d 4
e 6
f 7
dtype: int64
---series通过值进行排序---
c 1
a 2
b 3
d 4
e 6
f 7
dtype: int64
dataframe排序frame = pd.DataFrame([[2, 7, 4, 9, 1, 5], [3, 7, 1, 9, 4, 5], [5, 7, 9, 1, 4, 2]],
columns=['b', 'e', 'f', 'a', 'd', 'c'],
index=['one', 'two', 'three'])
print(frame)
print('---dataframe根据行索引进行降序排序(排序时默认升序,调节ascending参数)---')
print(frame.sort_index(ascending=False))
print('---dataframe根据列索引进行排序---')
print(frame.sort_index(axis=1))
print('---dataframe根据值进行排序:---')
print(frame.sort_values(by='a'))
print('---通过多个索引进行排序:---')
print(frame.sort_values(by=['a', 'c']))
---------------输出结果---------------------------
b e f a d c
one 2 7 4 9 1 5
two 3 7 1 9 4 5
three 5 7 9 1 4 2
---dataframe根据行索引进行降序排序(排序时默认升序,调节ascending参数)---
b e f a d c
two 3 7 1 9 4 5
three 5 7 9 1 4 2
one 2 7 4 9 1 5
---dataframe根据列索引进行排序---
a b c d e f
one 9 2 5 1 7 4
two 9 3 5 4 7 1
three 1 5 2 4 7 9
---dataframe根据值进行排序:---
b e f a d c
three 5 7 9 1 4 2
one 2 7 4 9 1 5
two 3 7 1 9 4 5
---通过多个索引进行排序:---
b e f a d c
three 5 7 9 1 4 2
one 2 7 4 9 1 5
two 3 7 1 9 4 5