Python中Dataframe数据排序方法(含实例讲解)
作者:旅途中的宽~
在进行数据分析操作时,经常需要对数据按照某行某列排序,或者按照多行多列排序,以及按照索引值排序等等,下面这篇文章主要给大家介绍了关于Python中Dataframe数据排序方法的相关资料,需要的朋友可以参考下
Dataframe数据默认按索引排序,主要重排方法有:
1、 通过frame=frame.reindex([6,5,4,3,2,1,0]) 重排:
data_demo=pd.read_csv('dataset.csv') data_demo=data_demo.iloc[:10,:] data_demo
此时的数据为(这里仅展示部分数据):
我们按照第一种方法排序,结果如下:
data_demo_1=data_demo.reindex([9,7,8,5,4,1,0,2,6,3]) data_demo_1
2、通过frame.sort_values(by=[‘height’],ascending=False):
按照height字段重排,默认按升序,需要降序时再加ascending=False
参数。
如果数据是字符,则是按照字符编码排序,看起来好像没有规律。如果想看一个汉字的编码,可以使用'xx'.encode()
的方法查看。
我们展示一下部分原数据:
我们的目标是把“值”那一列进行排序:
data_RF_pre_100=data_RF.sort_values(by=['值'],ascending=False) data_RF_pre_100
展示排序后的结果:
3、 通过frame.sort_values(by=[‘A’,‘B’],ascending=[False,True]):
先按A列再按B列排序,其中A列降序,B列升序
原数据:
上面的排序方式:
data_demo_3=data_demo.sort_values(by=['辛烷值RON','硫含量,μg/g'],ascending=[False,True]) data_demo_3
4、一些其他的细节问题:
排序完如果还想调整索引号为升序,则增加这样一句话:
frame.reset_index(drop=True)
如果不想删除原索引号,只增加一列新索引,则用:
frame.reset_index()
在任何时候,如果想恢复原来的索引排序,则用:
frame.sord_index()
列的重新排序,即是数据的重新选择:
frame[['A', 'B','C', 'D']]
总结
到此这篇关于Python中Dataframe数据排序方法的文章就介绍到这了,更多相关Python中Dataframe数据排序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!