Numpy中masked Array

在许多情况下,数据集可能不完整或因无效数据的存在而受到污染。 例如,传感器可能无法记录数据或记录无效值。 numpy.ma模块通过引入掩码数组提供了一种解决此问题的便捷方法。

masked数组是标准numpy.ndarray和 masked的组合。 掩码是nomask,表示关联数组的值无效,或者是一个布尔数组,用于确定关联数组的每个元素是否有效。 当掩码的元素为False时,关联数组的相应元素有效,并且被称为未屏蔽。 当掩码的元素为True时,相关数组的相应元素被称为被屏蔽(无效)。

该包确保在计算中不使用被屏蔽的条目。

>>> import numpy as np
>>> import numpy.ma as ma
>>> x = np.array([1, 2, 3, -1, 5])
如果我们希望-1被标记为无效
则可以:
>>> mx = ma.masked_array(x, mask=[0, 0, 0, 1, 0])
当计算平均值时,不会考虑无效
>>> mx.mean()
2.75
import numpy.ma as ma
x = np.array([1,2,3,5,7,4,3,2,8,0])
mask = x < 5
mx = ma.array(x,mask=mask)
print(mask)
print(mx)
print(mx.filled())

Out:
[ True True True False False True True True False True]
[-- – -- 5 7 – -- – 8 --]
[999999 999999 999999 5 7 999999 999999 999999 8 999999]

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值