跳转至

Numpy maskedarray . masked _ less()函数| Python

原文:https://www . geeksforgeeks . org/numpy-masked array-masked _ less-function-python/

在许多情况下,数据集可能是不完整的,或者被无效数据污染。例如,传感器可能未能记录数据,或者记录了无效值。numpy.ma模块通过引入屏蔽数组提供了一种解决这个问题的便捷方法。屏蔽数组是指可能缺少条目或条目无效的数组。

numpy.MaskedArray.masked_less() 函数用于屏蔽一个数组中小于给定值的地方。该功能是masked_where的快捷方式,有condition = (arr < value).

语法: numpy.ma.masked_less(arr, value, copy=True)

参数: arr:【ndarray】输入我们要屏蔽的数组。 值:【int】用于屏蔽为<值的数组元素。 复制:【bool】如果为真(默认),在结果中复制一份 arr。如果为假,就地修改 arr 并返回视图。

返回:【屏蔽数组】屏蔽后的结果数组。

代码#1 :

# Python program explaining
# numpy.MaskedArray.masked_less() 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_less methods 
# to input array where value<2
mask_arr = ma.masked_less(in_arr, 2)
print ("Masked array : ", mask_arr)

Output:

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

代码#2 :

# Python program explaining
# numpy.MaskedArray.masked_less() 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([5e8, 3e-5, -45.0, 4e4, 5e2])
print ("Input array : ", in_arr)

# applying MaskedArray.masked_less methods 
# to input array where value<5e2
mask_arr = ma.masked_less(in_arr, 5e2)
print ("Masked array : ", mask_arr)

Output:

Input array :  [ 5.0e+08  3.0e-05 -4.5e+01  4.0e+04  5.0e+02]
Masked array :  [500000000.0 -- -- 40000.0 500.0]



回到顶部