按索引对DataFrame或Series进行排序(注意ascending=false的意思是按照降序排序,若不写参数则默认升序排序)
DataFrame的构造函数默认参数是(值,列名,行索引),行索引不填则默认0,1,2,3这样?
In [101]: frame=pd.DataFrame(np.arange(12).reshape((4,3)),columns=['c','a','b'],index=['D','B','C','A'])c a bD 0 1 2B 3 4 5C 6 7 8A 9 10 11In [102]: frame.sort_index(axis=0)Out[102]:c a bA 9 10 11B 3 4 5C 6 7 8D 0 1 2In [103]: frame.sort_index(axis=1)Out[103]:a b cD 1 2 0B 4 5 3C 7 8 6A 10 11 9In [105]: frame.sort_index(axis=1,ascending=False)Out[105]:c b aD 0 2 1B 3 5 4C 6 8 7A 9 11 10
按指定的值对DataFrame进行排序
In [133]: frame.sort_index(by=['b'],ascending=False)Out[133]:c a bA 9 10 11C 6 7 8B 3 4 5D 0 1 2
按值对Series进行排序
In [125]: obj=pd.Series([4,7,-3,2])In [126]: obj.sort_values()Out[126]:2 -33 20 41 7dtype: int64
部分内容参考博文