对numpy中的数组条件筛选功能详解


Posted in Python onJuly 02, 2018

在程序设计中,时常会遇到数据的唯一化、相同、相异信息的提取等工作,在格式化的向量存储矩阵中南,numpy能够提供比较不错的快速处理功能。

1,唯一化的实现:

In [63]: data = np.array(['int','float','int','boolean','double','boolean'])
In [64]: data
Out[64]:
array(['int', 'float', 'int', 'boolean', 'double', 'boolean'],
  dtype='|S7')
In [65]: np.unique(data)
Out[65]:
array(['boolean', 'double', 'float', 'int'],
  dtype='|S7')
In [66]: data = np.array([1,5,3,6,2,4,1,3,5,7,9])
In [67]: data
Out[67]: array([1, 5, 3, 6, 2, 4, 1, 3, 5, 7, 9])
In [68]: np.unique(data)
Out[68]: array([1, 2, 3, 4, 5, 6, 7, 9])

通过unique可以实现数组的唯一化,并且,唯一化后的返回值会进行排序。

2,交集的实现

In [69]: data1 = np.arange(10)
In [70]: data1
Out[70]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
In [71]: data2 = np.array([2,8,6,4])
In [72]: np.intersect1d(data1,data2)
Out[72]: array([2, 4, 6, 8])

使用intersect1d可以实现求取两个数组集合的交集。

2,并集计算

In [73]: np.union1d(data1,data2)
Out[73]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

union1d可以实现对两个数组集合的并集计算。

3,子集判断

In [74]: np.in1d(data1,data2)
Out[74]: array([False, False, True, False, True, False, True, False, True, False], dtype=bool)
In [75]: np.in1d(data2,data1)
Out[75]: array([ True, True, True, True], dtype=bool)

通过in1d可以实现对第一个参数数组中的每个元素是否是第二个参数数组子集的判断,而最终通过判断返回的布尔数组即可判断两个参数数组的子集关系。

4,差异判断

4.1,集合差判断

In [76]: np.setdiff1d(data1,data2)
Out[76]: array([0, 1, 3, 5, 7, 9])
In [77]: np.setdiff1d(data2,data1)
Out[77]: array([], dtype=int32)

setdiff1d可以求解出存在于第一个集合但是并不存在于第二个集合中的元素。返回值是一个数组集合。

4.1 数组“异或”求解

In [78]: np.setxor1d(data1,data2)
Out[78]: array([0, 1, 3, 5, 7, 9])
In [79]: np.setxor1d(data2,data1)
Out[79]: array([0, 1, 3, 5, 7, 9])

setxor1d用于求解不同时存在于两个数组中的元素,并返回一个数组集合。两个参数的顺序变化不会改变求解的结果。返回的结果是是一个有序的数组序列。

上面的几个基本的逻辑判断功能如果能够使用得当,能够实现多种筛选判断的操作。

这篇对numpy中的数组条件筛选功能详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python处理文本文件实现生成指定格式文件的方法
Jul 31 Python
Python获取Windows或Linux主机名称通用函数分享
Nov 22 Python
在Windows系统上搭建Nginx+Python+MySQL环境的教程
Dec 25 Python
Python基础教程之tcp socket编程详解及简单实例
Feb 23 Python
利用Python操作消息队列RabbitMQ的方法教程
Jul 19 Python
Python使用matplotlib绘图无法显示中文问题的解决方法
Mar 14 Python
Python读取Excel表格,并同时画折线图和柱状图的方法
Oct 14 Python
使用python 打开文件并做匹配处理的实例
Jan 02 Python
Python单元和文档测试实例详解
Apr 11 Python
pytorch 实现cross entropy损失函数计算方式
Jan 02 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
Apr 07 Python
使用pytorch实现线性回归
Apr 11 Python
python matlibplot绘制多条曲线图
Feb 19 #Python
python matlibplot绘制3D图形
Jul 02 #Python
对numpy Array [: ,] 的取值方法详解
Jul 02 #Python
Python使用itertools模块实现排列组合功能示例
Jul 02 #Python
python绘制立方体的方法
Jul 02 #Python
python numpy 一维数组转变为多维数组的实例
Jul 02 #Python
Python实现通过继承覆盖方法示例
Jul 02 #Python
You might like
PHP函数preg_match_all正则表达式的基本使用详细解析
2013/08/31 PHP
屏蔽PHP默认设置中的Notice警告的方法
2016/05/20 PHP
基于jquery的表格排序
2010/09/11 Javascript
基于jquery的页面划词搜索JS
2010/09/14 Javascript
基于jquery的多彩百分比 动态进度条 投票效果显示效果实现代码
2011/08/28 Javascript
jquery文档操作wrap()方法实例简述
2015/01/10 Javascript
JQuery+CSS实现图片上放置按钮的方法
2015/05/29 Javascript
jQuery Validate表单验证插件 添加class属性形式的校验
2016/01/18 Javascript
JavaScript学习笔记之ES6数组方法
2016/03/25 Javascript
Javascript 实现微信分享(QQ、朋友圈、分享给朋友)
2016/10/21 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
2017/01/13 Javascript
浅谈JS封闭函数、闭包、内置对象
2017/07/18 Javascript
Js中async/await的执行顺序详解
2017/09/22 Javascript
jQuery基于cookie实现换肤功能实例
2017/10/14 jQuery
浅谈在node.js进入文件目录的问题
2018/05/13 Javascript
基于vue-upload-component封装一个图片上传组件的示例
2018/10/16 Javascript
vsCode安装使用教程和插件安装方法
2020/08/24 Javascript
layui 弹出层值回传解决方式
2019/11/14 Javascript
js删除指定位置超链接中含有百度与360的标题
2021/01/06 Javascript
python 随机打乱 图片和对应的标签方法
2018/12/14 Python
Django数据库类库MySQLdb使用详解
2019/04/28 Python
Python中一些深不见底的“坑”
2019/06/12 Python
django rest framework vue 实现用户登录详解
2019/07/29 Python
详解在python操作数据库中游标的使用方法
2019/11/12 Python
Python类super()及私有属性原理解析
2020/06/15 Python
利用python制作拼图小游戏的全过程
2020/12/04 Python
TripAdvisor越南:全球领先的旅游网站
2017/09/21 全球购物
深圳茁壮笔试题
2015/05/28 面试题
后勤人员自我鉴定
2013/10/20 职场文书
应届行政管理专业个人自我评价
2013/12/28 职场文书
精通CAD能手自荐书
2014/01/31 职场文书
关于读书的演讲稿1000字
2014/08/27 职场文书
2014年重阳节老干部座谈会上的讲话稿
2014/09/25 职场文书
2015年试用期自我评价范文
2015/03/10 职场文书
SQL注入篇学习之盲注/宽字节注入
2022/03/03 MySQL
SQL Server的存储过程与触发器以及系统函数和自定义函数
2022/04/10 SQL Server