Numpy掩码式数组详解


Posted in Python onApril 17, 2018

数据很大形况下是凌乱的,并且含有空白的或者无法处理的字符,掩码式数组可以很好的忽略残缺的或者是无效的数据点。掩码式数组由一个正常数组与一个布尔式数组组成,若布尔数组中为Ture,则表示正常数组中对应下标的值无效,反之False表示对应正常数组的值有效。

创建方法为,首先创建一个布尔型数组,然后通过numpy.ma子程序包提供的函数来创建掩码式数组,掩码式数组提供了各种所需函数。

创建实例如下:

import numpy as np
origin = np.arange(16).reshape(4,4)  #生成一个4×4的矩阵
np.random.shuffle(origin)     #随机打乱矩阵元素
random_mask = np.random.randint(0,2,size=origin.shape)#生成随机[0,2)的整数的4×4矩阵
mask_array = np.ma.array(origin,mask=random_mask)#生成掩码式矩阵
print(mask_array)

结果如下:

[[12 13 -- 15]
 [8 9 10 --]
 [-- -- -- 3]
 [-- 5 6 --]]

用于:

1.对负数取对数

import numpy as np
triples = np.arange(0,10,3)#每隔3取0到10中的整数,(0,3,6,9)
signs = np.ones(10)#(1,1,1,1,1,1,1,1,1)
signs[triples] = -1#(-1,1,1,-1,1,1,-1,1,1,-1)
values = signs * 77#(-77,77,77,-77,77,77,-77,77,77,-77)
ma_log = np.ma.log(values)#掩码式取对数
print(ma_log)

结果为:

[-- 4.343805421853684 4.343805421853684 -- 4.343805421853684
 4.343805421853684 -- 4.343805421853684 4.343805421853684 --]

2.忽略极值

import numpy as np
inside = np.ma.masked_outside(array,min,max)

以上这篇Numpy掩码式数组详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django中URL视图函数的一些高级概念介绍
Jul 20 Python
Django REST为文件属性输出完整URL的方法
Dec 18 Python
zookeeper python接口实例详解
Jan 18 Python
彻底搞懂Python字符编码
Jan 23 Python
python将文本分每两行一组并保存到文件
Mar 19 Python
浅谈python下含中文字符串正则表达式的编码问题
Dec 07 Python
Python之使用adb shell命令启动应用的方法详解
Jan 07 Python
Python自定义一个类实现字典dict功能的方法
Jan 19 Python
PyTorch之图像和Tensor填充的实例
Aug 18 Python
python 获取当前目录下的文件目录和文件名实例代码详解
Mar 10 Python
python tkinter实现连连看游戏
Nov 16 Python
Selenium 配置启动项参数的方法
Dec 04 Python
对numpy中布尔型数组的处理方法详解
Apr 17 #Python
Python简单实现阿拉伯数字和罗马数字的互相转换功能示例
Apr 17 #Python
python3库numpy数组属性的查看方法
Apr 17 #Python
对python中的for循环和range内置函数详解
Apr 17 #Python
Numpy数组转置的两种实现方法
Apr 17 #Python
详解Django之auth模块(用户认证)
Apr 17 #Python
numpy中实现ndarray数组返回符合特定条件的索引方法
Apr 17 #Python
You might like
PHP中的MYSQL常用函数(php下操作数据库必备)
2010/09/12 PHP
thinkphp循环结构用法实例
2014/11/24 PHP
jquery tools系列 expose 学习
2009/09/06 Javascript
数组方法解决JS字符串连接性能问题有争议
2011/01/12 Javascript
遨游,飞飞,IE,空中网 浏览器无提示关闭方法
2011/07/11 Javascript
js实现在文本框光标处添加字符的方法介绍
2012/11/24 Javascript
HTML长文本截取含有HTML代码同样适用的两种方法
2013/07/31 Javascript
JavaScript中检查对象property的存在性方法介绍
2014/12/30 Javascript
cookie的secure属性详解
2015/04/08 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
JavaScript实现快速排序的方法
2015/07/31 Javascript
谈谈JavaScript类型系统之Math
2016/01/06 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
2016/05/20 Javascript
AngularJs 动态加载模块和依赖
2016/09/15 Javascript
基于Bootstrap漂亮简洁的CSS3价格表(附源码下载)
2017/02/28 Javascript
基于 D3.js 绘制动态进度条的实例详解
2018/02/26 Javascript
vue项目中引入noVNC远程桌面的方法
2018/03/05 Javascript
webpack4.x开发环境配置详解
2018/08/04 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
angular 表单验证器验证的同时限制输入的实现
2019/04/11 Javascript
微信小程序制作扭蛋机代码实例
2019/09/24 Javascript
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
[02:16]深扒TI7聊天轮盘语音出处2
2017/05/11 DOTA
Python实现的多进程和多线程功能示例
2018/05/29 Python
python flask框架实现传数据到js的方法分析
2019/06/11 Python
Django获取应用下的所有models的例子
2019/08/30 Python
Python应用实现双指数函数及拟合代码实例
2020/06/19 Python
Selenium之模拟登录铁路12306的示例代码
2020/07/31 Python
详解HTML5表单新增属性
2016/12/21 HTML / CSS
团工委书记自荐书范文
2013/12/17 职场文书
《寓言两则》教学反思
2014/02/27 职场文书
教师远程培训感言
2014/03/06 职场文书
夏季药店促销方案
2014/08/22 职场文书
营销经理工作检讨书
2014/11/03 职场文书
行政处罚告知书
2015/07/01 职场文书
小学信息技术教学反思
2016/02/16 职场文书