Python Numpy MaskedArray.masked_where()函数

Python Numpy MaskedArray.masked_where()函数

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

numpy.MaskedArray.masked_where()函数用于屏蔽一个满足条件的数组,在条件为True时返回arr作为被屏蔽的数组。arr或条件的任何屏蔽值也会在输出中被屏蔽。

语法: numpy.ma.masked_where(condition, arr, copy=True)

参数:
condition : [array_like] 屏蔽条件。当条件测试浮点值是否相等时,考虑使用masked_values代替。
arr : [ndarray] 我们要屏蔽的输入数组。
copy : [bool] 如果为真(默认),在结果中复制Arr。如果为假,则在原地修改arr,并返回一个视图。

返回 : [ MaskedArray] 遮蔽Arr的结果,条件为True。

代码#1:

# Python program explaining
# numpy.MaskedArray.masked_where() method 
  
# importing numpy as geek 
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
  
# creating input array 
in_arr = geek.array([1, 2, 3, -1, 2])
print ("Input array : ", in_arr)
  
# applying MaskedArray.masked_where methods 
# to input array where value<= 1
mask_arr = ma.masked_where(in_arr<= 1, in_arr)
print ("Masked array : ", mask_arr)

输出:

Input array :  [ 1  2  3 -1  2]
Masked array :  [-- 2 3 -- 2]

代码#2:

# Python program explaining
# numpy.MaskedArray.masked_where() method 
  
# importing numpy as geek 
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
  
# creating input array in_arr1 
in_arr1 = geek.arange(4)
print ("1st Input array : ", in_arr1)
  
# applying MaskedArray.masked_where methods 
# to input array in_arr1 where value = 1
mask_arr1 = ma.masked_where(in_arr1 == 1, in_arr1)
print ("1st Masked array : ", mask_arr1)
  
# creating input array in_arr2 
in_arr2 = geek.arange(4)
print ("2nd Input array : ", in_arr2)
  
# applying MaskedArray.masked_where methods 
# to input array in_arr2 where value = 1
mask_arr2 = ma.masked_where(in_arr2 == 3, in_arr2)
print ("2nd Masked array : ", mask_arr2)
  
# applying MaskedArray.masked_where methods 
# to 1st masked array where second masked array
# is used as condition
res_arr = ma.masked_where(mask_arr1 == 3, mask_arr2)
print("Resultant Masked array : ", res_arr)

输出:

1st Input array :  [0 1 2 3]
1st Masked array :  [0 -- 2 3]
2nd Input array :  [0 1 2 3]
2nd Masked array :  [0 1 2 --]
Resultant Masked array :  [0 -- 2 --]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Numpy教程