Pandas之排序函数sort_values()的实现


Posted in Python onJuly 09, 2019

一、sort_values()函数用途

pandas中的sort_values()函数原理类似于SQL中的order by,可以将数据集依照某个字段中的数据进行排序,该函数即可根据指定列数据也可根据指定行的数据排序。

二、sort_values()函数的具体参数

用法:

DataFrame.sort_values(by=‘##',axis=0,ascending=True, inplace=False, na_position=‘last')

参数说明

参数 说明
by 指定列名(axis=0或'index')或索引值(axis=1或'columns')
axis 若axis=0或'index',则按照指定列中数据大小排序;若axis=1或'columns',则按照指定索引中数据大小排序,默认axis=0
ascending 是否按指定列的数组升序排列,默认为True,即升序排列
inplace 是否用排序后的数据集替换原来的数据,默认为False,即不替换
na_position {‘first',‘last'},设定缺失值的显示位置

三、sort_values用法举例

创建数据框

#利用字典dict创建数据框
import numpy as np
import pandas as pd
df=pd.DataFrame({'col1':['A','A','B',np.nan,'D','C'],
         'col2':[2,1,9,8,7,7],
         'col3':[0,1,9,4,2,8]
})
print(df)

>>>
 col1 col2 col3
0  A   2   0
1  A   1   1
2  B   9   9
3 NaN   8   4
4  D   7   2
5  C   7   8

依据第一列排序,并将该列空值放在首位

#依据第一列排序,并将该列空值放在首位
print(df.sort_values(by=['col1'],na_position='first'))
>>>
 col1 col2 col3
3 NaN   8   4
0  A   2   0
1  A   1   1
2  B   9   9
5  C   7   8
4  D   7   2

依据第二、三列,数值降序排序

#依据第二、三列,数值降序排序
print(df.sort_values(by=['col2','col3'],ascending=False))
>>>
 col1 col2 col3
2  B   9   9
3 NaN   8   4
5  C   7   8
4  D   7   2
0  A   2   0
1  A   1   1

根据第一列中数值排序,按降序排列,并替换原数据

#根据第一列中数值排序,按降序排列,并替换原数据
df.sort_values(by=['col1'],ascending=False,inplace=True,
           na_position='first')
print(df)
>>>
 col1 col2 col3
3 NaN   8   4
4  D   7   2
5  C   7   8
2  B   9   9
1  A   1   1
0  A   2   0

按照索引值为0的行,即第一行的值来降序排序

x = pd.DataFrame({'x1':[1,2,2,3],'x2':[4,3,2,1],'x3':[3,2,4,1]}) 
print(x)
#按照索引值为0的行,即第一行的值来降序排序
print(x.sort_values(by =0,ascending=False,axis=1))
>>>
  x1 x2 x3
0  1  4  3
1  2  3  2
2  2  2  4
3  3  1  1
  x2 x3 x1
0  4  3  1
1  3  2  2
2  2  4  2
3  1  1  3

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基础教程之Hello World!
Aug 29 Python
图文详解WinPE下安装Python
May 17 Python
Python3实现发送QQ邮件功能(html)
Dec 15 Python
Python断言assert的用法代码解析
Feb 03 Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
Nov 18 Python
Django Rest framework之认证的实现代码
Dec 17 Python
详解python路径拼接os.path.join()函数的用法
Oct 09 Python
python判断链表是否有环的实例代码
Jan 31 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
Feb 27 Python
Django Path转换器自定义及正则代码实例
May 29 Python
tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T
Jun 22 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
Jan 13 Python
python爬虫之快速对js内容进行破解
Jul 09 #Python
python 求某条线上特定x值或y值的点坐标方法
Jul 09 #Python
python将字符串转换成json的方法小结
Jul 09 #Python
Python绘制堆叠柱状图的实例
Jul 09 #Python
python3 线性回归验证方法
Jul 09 #Python
python time.sleep()是睡眠线程还是进程
Jul 09 #Python
python logging模块的使用总结
Jul 09 #Python
You might like
PHP删除特定数组内容并且重建数组索引的方法.
2011/03/25 PHP
PHP取整函数:ceil,floor,round,intval的区别详细解析
2013/08/31 PHP
CodeIgniter开发实现支付宝接口调用的方法示例
2016/11/14 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
Laravel 实现数据软删除功能
2019/08/21 PHP
javascript实现 在光标处插入指定内容
2007/05/25 Javascript
javascipt匹配单行和多行注释的正则表达式
2013/11/20 Javascript
Javascript中使用parseInt函数需要注意的问题
2015/04/02 Javascript
使用AngularJS对路由进行安全性处理的方法
2015/06/18 Javascript
基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
2015/11/24 Javascript
AngularJS HTML DOM详解及示例代码
2016/08/17 Javascript
微信小程序实现城市列表选择
2018/06/05 Javascript
Vue中在新窗口打开页面及Vue-router的使用
2018/06/13 Javascript
在vue中使用echarts图表实例代码详解
2018/10/22 Javascript
JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解
2019/08/16 Javascript
解决layUI的页面显示不全的问题
2019/09/20 Javascript
详解React 元素渲染
2020/07/07 Javascript
[00:47]DOTA2荣耀之路6:玩不了啦!
2018/05/30 DOTA
Python实现将xml导入至excel
2015/11/20 Python
Python之Scrapy爬虫框架安装及使用详解
2017/11/16 Python
Python request设置HTTPS代理代码解析
2018/02/12 Python
python将文本中的空格替换为换行的方法
2018/03/19 Python
对python for 文件指定行读写操作详解
2018/12/29 Python
canvas进阶之贝塞尔公式推导与物体跟随复杂曲线的轨迹运动
2018/01/10 HTML / CSS
美国在线医疗分销商:MedEx Supply
2020/02/04 全球购物
工作室成员个人发展规划范文
2014/01/24 职场文书
出生证明公证书
2014/04/09 职场文书
买卖车协议书
2014/04/21 职场文书
抵押贷款承诺书
2014/05/30 职场文书
毕业证委托书范文
2014/09/26 职场文书
民主评议党员总结
2014/10/20 职场文书
2014年终工作总结范本
2014/12/15 职场文书
单位实习鉴定评语
2015/01/04 职场文书
搞笑婚礼主持词开场白
2015/11/24 职场文书
Android Flutter实现图片滑动切换效果
2022/04/07 Java/Android
使用Cargo工具高效创建Rust项目
2022/08/14 Javascript