在Series与DataFrame中数据的排序
sort_index()方法在指定轴上根据索引进行排序
sort_index(axis=0, ascending=True, inplace=True)
axis:1轴,0轴(默认)。
ascending:默认True升序,False降序。
inplace:默认为False,删除重复项后返回副本。True,直接在原数据上删除重复项。
# 初始的Series,DataFrame
series = pd.Series(np.arange(4), index=['a','c','d','b'])
df = pd.DataFrame(np.arange(20).reshape(4,5), index=['a','c','d','b'])
a 0
c 1
d 2
b 3
0 1 2 3 4
a 0 1 2 3 4
c 5 6 7 8 9
d 10 11 12 13 14
b 15 16 17 18 19
series.sort_index(axis=0, ascending=True, inplace=True)
df.sort_index(axis=0, ascending=True, inplace=True)
a 0
b 3
c 1
d 2
0 1 2 3 4
a 0 1 2 3 4
b 15 16 17 18 19
c 5 6 7 8 9
d 10 11 12 13 14
sort_index())方法在指定轴上根据数据进行排序,(NAN统一排在最后)
sort_values(axis=0, by=[1], ascending=True, inplace=True)
axis:1轴,0轴(默认)。
by:int,str,list等,当axis=0,by=[‘列名’];当axis=1,by=[‘行名’]。
ascending:默认True升序,False降序。
inplace:默认为False,删除重复项后返回副本。True,直接在原数据上删除重复项。
series.sort_values(ascending=False, inplace=True)
b 3
d 2
c 1
a 0
# by根据指定列的值排序
df.sort_values(axis=0, by=[1], ascending=False, inplace=True)
0 1 2 3 4
b 15 16 17 18 19
d 10 11 12 13 14
c 5 6 7 8 9
a 0 1 2 3 4
# by根据指定行的值排序
df.sort_values(axis=1, by=['a'], ascending=False, inplace=True)
4 3 2 1 0
a 4 3 2 1 0
c 9 8 7 6 5
d 14 13 12 11 10
b 19 18 17 16 15