数据很大形况下是凌乱的,并且含有空白的或者无法处理的字符,掩码式数组可以很好的忽略残缺的或者是无效的数据点。掩码式数组由一个正常数组与一个布尔式数组组成,若布尔数组中为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掩码式数组详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

本文标题: Numpy掩码式数组详解

本文地址: http://www.cppcns.com/jiaoben/python/225365.html

pythonlog数组_Numpy掩码式数组详解相关推荐

  1. python画二维散点图-基于python 二维数组及画图的实例详解

    1.二维数组取值 注:不管是二维数组,还是一维数组,数组里的数据类型要一模一样,即若是数值型,全为数值型 #二维数组 import numpy as np list1=[[1.73,1.68,1.71 ...

  2. php 打印对象详细信息,php打印显示数组与对象的函数详解

    php打印显示数组与对象的函数详解 发布于 2014-11-17 18:55:49 | 699 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext P ...

  3. 数组,异质结构以及指针的详解

    数组,异质结构以及指针的详解 前言 昨天看了一部韩国电影,老千2,看到凌晨5点,不过发现韩国的棒子们确实养眼,女的贼拉漂亮,还有大尺度哦~ 咱们上一次分析了过程(方法)的实现,其中精妙的栈帧占据了首要 ...

  4. 【Python】Numpy数组的切片、索引详解:取数组的特定行列

    [Python]Numpy数组的切片.索引详解:取数组的特定行列 文章目录 [Python]Numpy数组的切片.索引详解:取数组的特定行列 1. 介绍 2. 切片索引 2.1 切片索引先验知识 2. ...

  5. python数组相减_对Python 中矩阵或者数组相减的法则详解

    对Python 中矩阵或者数组相减的法则详解 最近在做编程练习,发现有些结果的值与答案相差较大,通过分析比较得出结论,大概过程如下: 定义了一个计算损失的函数: def error(yhat,labe ...

  6. ❤️导图整理数组6:四数组的四数之和,详解Counter类实现哈希表计数,力扣454❤️

    此专栏文章是对力扣上算法题目各种方法的总结和归纳, 整理出最重要的思路和知识重点并以思维导图形式呈现, 当然也会加上我对导图的详解. 目的是为了更方便快捷的记忆和回忆算法重点(不用每次都重复看题解), ...

  7. shell编程数组与冒泡算法排序详解

    shell编程数组与冒泡算法排序详解 一 数组的四种表达方式 二 数组的增删改查操作 三 数组传参 3.1 主程序向函数传数组参数 3.2 从函数返回数组到主程序 四 冒泡算法排序 一 数组的四种表达 ...

  8. matlab合并有序数组,《数组合并》JS合并两个数组的3种方法详解

    这篇文章主要介绍了JS合并两个数组的3种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一个包解决你所有的JS问题,点击获取 需要将两个数组 ...

  9. python画二维数组散点图_基于python二维数组及画图的实例详解

    基于python二维数组及画图的实例详解 下面小编就为大家分享一篇基于python 二维数组及画图的实例详解,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 1.二维数组取值 注:不管 ...

  10. js some every数组方法的区别与详解

    js some every数组方法的区别于详解 前言 一.some方法 二.every() 方法 总结 前言 在开发中对数组数据的常规操作我们会经常遇到一些必要的操作 例如:要检测数组中的元素是否满足 ...

最新文章

  1. 3.放弃CHAR吧,在铸成大错之前!
  2. CheckList 如何梳理可减少上线的验证时间(总结篇)
  3. 对 makefile 中 override 优先级的学习体会
  4. (翻译)Google Guava Cache
  5. 经典面试题(36):以下代码将输出的结果是什么?
  6. mysql加锁6_MySQL优化(6):Mysql锁机制
  7. 在Kubernetes上部署和管理PostgreSQL
  8. 全球最大地标识别数据集问世:包含200万张图片和3万处地标
  9. 关于圆的角度和弧度的计算公式
  10. 关于国外硕博士论文搜索和下载的讨论
  11. 君子不器 (器就不是君子)
  12. Arm 虚拟硬件与新解决方案或将颠覆物联网产品研发
  13. 自动驾驶 Apollo 源码分析系列,感知篇(一)
  14. tensorflow学习之二 alexnet vgg resnet目标分类
  15. SGG前台项目复习笔记
  16. Exception thrown when sending a message with key=‘null‘
  17. Nirvana为应用而生,开启公链市场新纪元
  18. Java并发包:ExecutorService和ThreadPoolExecutor
  19. 总谐波失真--THD
  20. ITE IT986X系列build命令实现

热门文章

  1. 毕设题目:Matlab优化覆盖
  2. Linux手势控制软件,让 linux 实现触摸板多点触控与手势操作
  3. maven实战 源码_Docker与Jib(maven插件版)实战
  4. tensorflow Dataset API diff between make_initializable_iterator and make_one_shot_iterator
  5. 人均维护服务器数量,华为FusionCube一体机助力金华职业技术学院构建最佳云平台...
  6. oracle实现累加,oracle用sum函数实现累加
  7. 怎么切麻花槽_水电怎么安装?这几点需牢记!
  8. Vmware安装vmware-tools后,仍无法上网
  9. 【C++】常用集合算法
  10. em模型补缺失值_EM算法学习(三)