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遍历数组的方法小结
Apr 30 Python
[原创]pip和pygal的安装实例教程
Dec 07 Python
django2 快速安装指南分享
Jan 05 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
Sep 16 Python
TensorFlow2.0:张量的合并与分割实例
Jan 19 Python
Python爬取12306车次信息代码详解
Aug 12 Python
浅析python中的del用法
Sep 02 Python
Python用access判断文件是否被占用的实例方法
Dec 17 Python
python 邮件检测工具mmpi的使用
Jan 04 Python
python 多线程爬取壁纸网站的示例
Feb 20 Python
Python还能这么玩之用Python修改了班花的开机密码
Jun 04 Python
基于Python和openCV实现图像的全景拼接详细步骤
Oct 05 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阳历转农历优化版
2016/08/08 PHP
php cookie 详解使用实例
2016/11/03 PHP
关于viewport,Ext.panel和Ext.form.panel的关系
2009/05/07 Javascript
JavaScript避免内存泄露及内存管理技巧
2014/09/05 Javascript
JavaScript优化专题之Loading and Execution加载和运行
2016/01/20 Javascript
理解JavaScript事件对象
2016/01/25 Javascript
Bootstrap布局方式详解
2016/05/27 Javascript
javaScript事件学习小结(四)event的公共成员(属性和方法)
2016/06/09 Javascript
bootstrap监听滚动实现头部跟随滚动
2016/11/08 Javascript
vue2手机APP项目添加开屏广告或者闪屏广告
2017/11/28 Javascript
require.js 加载过程与使用方法介绍
2018/10/30 Javascript
30分钟快速实现小程序语音识别功能
2018/11/27 Javascript
Node.js控制台彩色输出的方法与原理实例详解
2019/12/01 Javascript
微信小程序实现一个简单swiper代码实例
2019/12/30 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
[01:19:54]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#1Alliance VS EHOME
2016/03/03 DOTA
python逐行读写txt文件的实例讲解
2018/04/03 Python
python读取和保存视频文件
2018/04/16 Python
Python第三方库h5py_读取mat文件并显示值的方法
2019/02/08 Python
详解Python3除法之真除法、截断除法和下取整对比
2019/05/23 Python
Python学习笔记基本数据结构之序列类型list tuple range用法分析
2019/06/08 Python
python将print输出的信息保留到日志文件中
2019/09/27 Python
keras .h5转移动端的.tflite文件实现方式
2020/05/25 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
HTML5中form如何关闭自动完成功能的方法
2018/07/02 HTML / CSS
如何实现jdbc性能优化
2012/07/30 面试题
商场经理竞聘演讲稿
2014/01/01 职场文书
科技开发中心办公室主任岗位责任制
2014/02/10 职场文书
社区先进事迹材料
2014/05/19 职场文书
演讲比赛策划方案
2014/06/11 职场文书
公司市场专员岗位职责
2014/06/29 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书
留学推荐信(中英文版)
2015/03/26 职场文书
党支部审查意见
2015/06/02 职场文书
vue 给数组添加新对象并赋值
2022/04/20 Vue.js