Numpy MaskedArray.masked_inside() function | Python (original) (raw)
Last Updated : 27 Sep, 2019
In many circumstances, datasets can be incomplete or tainted by the presence of invalid data. For example, a sensor may have failed to record a data, or recorded an invalid value. The numpy.ma
module provides a convenient way to address this issue, by introducing masked arrays.Masked arrays are arrays that may have missing or invalid entries.
numpy.MaskedArray.masked_inside()
function is used to mask an array inside a given interval.This function is a Shortcut to masked_where, where condition is True for arr inside the interval [v1, v2] (v1 <= arr <= v2)
. The boundaries v1 and v2 can be given in either order.
Syntax :
numpy.ma.masked_inside(arr, v1, v2, copy=True)
Parameters:
arr : [ndarray] Input array which we want to mask.
v1, v2 : [int] Lower and upper range.
copy : [bool] If True (default) make a copy of arr in the result. If False modify arr in place and return a view.Return : [ MaskedArray] The resultant array after masking.
Code #1 :
import
numpy as geek
import
numpy.ma as ma
in_arr
=
geek.array([
1
,
2
,
3
,
-
1
,
2
])
print
(
"Input array : "
, in_arr)
mask_arr
=
ma.masked_inside(in_arr,
-
1
,
1
)
print
(
"Masked array : "
, mask_arr)
Output:
Input array : [ 1 2 3 -1 2] Masked array : [-- 2 3 -- 2]
Code #2 :
import
numpy as geek
import
numpy.ma as ma
in_arr
=
geek.array([
5e8
,
3e
-
5
,
-
45.0
,
4e4
,
5e2
])
print
(
"Input array : "
, in_arr)
mask_arr
=
ma.masked_inside(in_arr,
5e2
,
5e8
)
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 : [-- 3e-05 -45.0 -- --]