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 相关文章推荐
python目录与文件名操作例子
Aug 28 Python
Fabric 应用案例
Aug 28 Python
python中OrderedDict的使用方法详解
May 05 Python
Python利用Django如何写restful api接口详解
Jun 08 Python
Python面向对象总结及类与正则表达式详解
Apr 18 Python
pyqt5 键盘监听按下enter 就登陆的实例
Jun 25 Python
Python安装selenium包详细过程
Jul 23 Python
Python实现二叉搜索树BST的方法示例
Jul 30 Python
如何用Python来搭建一个简单的推荐系统
Aug 07 Python
Python3实现zip分卷压缩过程解析
Oct 09 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
Nov 27 Python
详解Python中的Lock和Rlock
Jan 26 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获取操作系统语言代码
2013/11/04 PHP
PHP7扩展开发教程之Hello World实现方法示例
2017/08/03 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
ThinkPHP3.2框架操作Redis的方法分析
2019/05/05 PHP
jQuery 浮动广告实现代码
2008/12/25 Javascript
JavaScript中的一些定位属性[图解]
2010/07/14 Javascript
jquery右下角弹出提示框示例代码
2013/10/08 Javascript
PHP+jQuery实现随意拖动层并即时保存拖动位置
2015/04/30 Javascript
angularjs 源码解析之injector
2016/08/22 Javascript
bootstrap手风琴折叠示例代码分享
2017/05/22 Javascript
vue 请求后台数据的实例代码
2017/06/22 Javascript
详解webpack编译多页面vue项目的配置问题
2017/12/11 Javascript
vue计算属性和监听器实例解析
2018/05/10 Javascript
JavaScript折半查找(二分查找)算法原理与实现方法示例
2018/08/06 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
Python中3种内建数据结构:列表、元组和字典
2014/11/30 Python
Python计算两个日期相差天数的方法示例
2017/05/23 Python
Python的语言类型(详解)
2017/06/24 Python
pycharm修改界面主题颜色的方法
2019/01/17 Python
运用Python的webbrowser实现定时打开特定网页
2019/02/21 Python
Python button选取本地图片并显示的实例
2019/06/13 Python
Python如何通过百度翻译API实现翻译功能
2020/04/02 Python
keras中的History对象用法
2020/06/19 Python
python与c语言的语法有哪些不一样的
2020/09/13 Python
Html5 Canvas实现图片标记、缩放、移动和保存历史状态功能 (附转换公式)
2020/03/18 HTML / CSS
英国护肤品购物网站:Beauty Expert
2016/08/19 全球购物
澳大利亚天然护肤品、化妆品和健康产品一站式商店:Nourished Life
2018/12/02 全球购物
泰国王权免税店官方网站:KingPower
2019/03/11 全球购物
主题婚礼策划方案
2014/02/10 职场文书
家长通知书教师评语
2014/04/17 职场文书
银行柜员求职自荐书
2014/06/18 职场文书
2014年销售部工作总结
2014/12/01 职场文书
学校办公室主任岗位职责
2015/04/01 职场文书
详解Laravel制作API接口
2021/05/31 PHP
Python socket如何解析HTTP请求内容
2022/02/12 Python
在MySQL中你成功的避开了所有索引
2022/04/20 MySQL