DataFrame中的排序分为两种,一种是对索引排序,一种是对值进行排序。
索引排序:sort_index();
值排序:sort_values();
值排名:rank()
对于索引排序,涉及到对行索引、列索引的排序,并且还涉及到是升序还是降序。函数df.sort_index(axis= , ascending= , inplace=),需要特别注意这三个参数。axis表示对行操作,还是对列操作;ascending表示升序,还是降序操作。
对于值排序,同样也是涉及到行、列排序问题,升序、降序排列问题。函数df.sort_values(by= , axis= , ascending= , inplace=),也需要特别注意这几个参数,只是多了一个by操作,需要我们指明是按照哪一行或哪一列,进行排序的。
注意:axis=0表示对行操作,axis=1表示对列进行操作;ascending=True表示升序,ascending=False表示降序;inplace=True表示对原始DataFrame本身操作,因此不需要赋值操作,inplace=False相当于是对原始DataFrame的拷贝,之后的一些操作都是针对这个拷贝文件进行操作的,因此需要我们赋值给一个变量,保存操作后的结果。
结果如下:
结果如下:
结果如下:
结果如下:
结果如下:
注意:上图中,我们分别按照A和D这个列进行排序,先按照A列做升序排列,当A列中具有相同值的时候,就按照D列做降序排列。
na_position参数用于设定缺失值的显示位置,first表示缺失值显示在最前面;last表示缺失值显示在最后面。
结果如下:
结果如下:
① method="first"
结果如下:
② method="min"
结果如下:
③ method="max"
结果如下:
④ method="average"
结果如下: