Pandas 数据排序 DataFrame.sort_values()方法

pandas 的 DataFrame.sort_values(by,axis,ascending,na_position)方法用于对数据排序
#参数

#by  后跟要排序的名字     可以是列名   也可以是行名  可以是单个名字:如by = "北京"     
也可以是多个名字 by = ["北京","上海","广州"]        要用列表括起来

#axis     表示轴   axis = 0  表示按行排序    axis = 1表示按列排序默认  axis = 0按行排序

#ascending   升序或者降序排序   ascending = True  表示降序排序  ascending = False 表示
升序排序  默认为升序排序

#na_position  空值在排序中显示的位置    na_position = "first"  表示空值在排序中显示的位置为第一位     
na_position = "last"  表示空值在排序中显示的位置为最后一位。	

这里有一份数据

	 df3
	       
	        北京	上海	广州	成都	   武汉	    沈阳    西安
    日期							
2019-01-01	62	    48	    63	    39.0	   29.0	    16	    18
2019-10-01	3534	2887	2845	1460.0	   NaN	    878	    819
2019-11-01	7758	6087	5602	NaN	       2942.0	1621	1625
2019-12-01	4920	3877	3527	1772.0     1977.0	1074	1078

我们按北京这个字段做升序排序

df3.sort_values(by="北京",axis = 0,ascending=True)  #这里df3是上面的表格数据

在这里插入图片描述
我们按多个字段排序 如北京 上海

df3.sort_values(by=["北京","上海"],axis = 0,ascending=True)

在这里插入图片描述
对有空值的列 我们把空值排在第一位

df3.sort_values(by="武汉",na_position="first",axis = 0,ascending=True) 
 #na_position = "first"  表示把空值放在第一位 
 #na_position = "last"  表示把空值放在最后一位

在这里插入图片描述

我们按列排序 按一个行标签

df3.sort_values(by="2019-10-01",na_position="first",axis = 1,ascending=True)#注意案列排序 axis = 1

在这里插入图片描述
我们按列排序 按多个行标签

df3.sort_values(by=["2019-10-01","2019-11-01"],na_position="first",axis = 1,ascending=True)

在这里插入图片描述

总结:根据需求 我们对参数进行不同的设置 满足不同的排序需求

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值