Open In App

Numpy MaskedArray.allequal() function | Python

Last Updated : 27 Sep, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

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.allequal() function return True if all entries of a and b are equal, using fill_value as a truth value where either or both are masked.

Syntax : numpy.ma.allequal(arr1, arr2, fill_value=True)

Parameters:
arr1, arr2 : [array_like] Input arrays to compare.
fill_value : [ bool, optional] Whether masked values in arr1 or arr2 are considered equal (True) or not (False).

Return : [ bool]Returns True if the two arrays are equal within the given tolerance, False otherwise. If either array contains NaN, then False is returned.

Code #1 :




# Python program explaining
# numpy.MaskedArray.allequal() method 
  
# importing numpy as geek 
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
  
# creating 1st input array 
in_arr1 = geek.array([1e8, 1e-5, -15.0])
print ("1st Input array : ", in_arr1)
  
# Now we are creating 1st masked array by making third entry as invalid. 
mask_arr1 = ma.masked_array(in_arr1, mask =[0, 0, 1])
print ("1st Masked array : ", mask_arr1)
  
# creating 2nd input array 
in_arr2 = geek.array([1e8, 1e-5, 15.0])
print ("2nd Input array : ", in_arr2)
  
# Now we are creating 2nd masked array by making third entry as invalid. 
mask_arr2 = ma.masked_array(in_arr2, mask =[0, 0, 1])
print ("2nd Masked array : ", mask_arr2)
  
# applying MaskedArray.allequal method
out_arr = ma.allequal(mask_arr1, mask_arr2, fill_value = False)
print ("Output array : ", out_arr)


Output:

1st Input array :  [ 1.0e+08  1.0e-05 -1.5e+01]
1st Masked array :  [100000000.0 1e-05 --]
2nd Input array :  [1.0e+08 1.0e-05 1.5e+01]
2nd Masked array :  [100000000.0 1e-05 --]
Output array :  False

 

Code #2 :




# importing numpy as geek 
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
  
# creating 1st input array 
in_arr1 = geek.array([2e8, 3e-5, -45.0])
print ("1st Input array : ", in_arr1)
  
# Now we are creating 1st masked array by making third entry as invalid. 
mask_arr1 = ma.masked_array(in_arr1, mask =[0, 0, 1])
print ("1st Masked array : ", mask_arr1)
  
# creating 2nd input array 
in_arr2 = geek.array([2e8, 3e-5, 15.0])
print ("2nd Input array : ", in_arr2)
  
# Now we are creating 2nd masked array by making third entry as invalid. 
mask_arr2 = ma.masked_array(in_arr2, mask =[0, 0, 1])
print ("2nd Masked array : ", mask_arr2)
# applying MaskedArray.allequal method
out_arr = ma.allequal(mask_arr1, mask_arr2, fill_value = True)
print ("Output  array : ", out_arr)


Output:

1st Input array :  [ 2.0e+08  3.0e-05 -4.5e+01]
1st Masked array :  [200000000.0 3e-05 --]
2nd Input array :  [2.0e+08 3.0e-05 1.5e+01]
2nd Masked array :  [200000000.0 3e-05 --]
Output  array :  True


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads