Numpy MaskedArray.mean() function | Python
numpy.MaskedArray.mean()
function is used to return the average of the masked array elements along given axis.Here masked entries are ignored, and result elements which are not finite will be masked.
Syntax : numpy.ma.mean(axis=None, dtype=None, out=None)
Parameters:
axis :[ int, optional] Axis along which the mean is computed. The default (None) is to compute the mean over the flattened array.
dtype : [dtype, optional] Type of the returned array, as well as of the accumulator in which the elements are multiplied.
out : [ndarray, optional] A location into which the result is stored.
-> If provided, it must have a shape that the inputs broadcast to.
-> If not provided or None, a freshly-allocated array is returned.
Return : [mean_along_axis, ndarray] A new array holding the result is returned unless out is specified, in which case a reference to out is returned.
Code #1 :
import numpy as geek
import numpy.ma as ma
in_arr = geek.array([[ 1 , 2 ], [ 3 , - 1 ], [ 5 , - 3 ]])
print ( "Input array : " , in_arr)
mask_arr = ma.masked_array(in_arr, mask = [[ 1 , 0 ], [ 1 , 0 ], [ 0 , 0 ]])
print ( "Masked array : " , mask_arr)
out_arr = mask_arr.mean()
print ( "mean of masked array along default axis : " , out_arr)
|
Output:
Input array : [[ 1 2]
[ 3 -1]
[ 5 -3]]
Masked array : [[-- 2]
[-- -1]
[5 -3]]
mean of masked array along default axis : 0.75
Code #2 :
import numpy as geek
import numpy.ma as ma
in_arr = geek.array([[ 1 , 0 , 3 ], [ 4 , 1 , 6 ]])
print ( "Input array : " , in_arr)
mask_arr = ma.masked_array(in_arr, mask = [[ 0 , 0 , 0 ], [ 0 , 0 , 1 ]])
print ( "Masked array : " , mask_arr)
out_arr1 = mask_arr.mean(axis = 0 )
print ( "mean of masked array along 0 axis : " , out_arr1)
out_arr2 = mask_arr.mean(axis = 1 )
print ( "mean of masked array along 1 axis : " , out_arr2)
|
Output:
Input array : [[1 0 3]
[4 1 6]]
Masked array : [[1 0 3]
[4 1 --]]
mean of masked array along 0 axis : [2.5 0.5 3.0]
mean of masked array along 1 axis : [1.3333333333333333 2.5]
Last Updated :
18 Oct, 2019
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...