Python numpy.ma.allclose()函数
numpy.ma.allclose()函数如果两个数组的元素在公差内相等,则返回True。这个函数等同于allclose,只是根据masked_equal参数,将屏蔽的值视为相等(默认)或不相等。
语法: numpy.ma.allclose(a, b, masked_equal = True, rtol = 1e-05, atol = 1e-08)
参数 :
a, b : [array_like] 要比较的输入数组。
masked_equal : [bool, optional] a和b中的屏蔽值是否被视为相等(True)或不相等(False)。默认情况下,它们被认为是相等的。
rtol : [float, optional] 相对公差。相对差值等于rtol * b,默认为1e-5。
atol : [float, optional] 绝对公差。绝对差值等于atol。默认为1e-8。
返回 : [bool] 如果两个数组在给定的公差内相等,则返回True,否则返回False。如果任何一个数组包含NaN,则返回False。
代码#1:
# Python program explaining
# numpy.ma.allclose() function
# importing numpy as geek
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
a = geek.ma.array([1e10, 1e-8, 42.0], mask = [0, 0, 1])
b = geek.ma.array([1.00001e10, 1e-9, -42.0], mask = [0, 0, 1])
gfg = geek.ma.allclose(a, b)
print (gfg)
输出 :
True
代码#2:
# Python program explaining
# numpy.ma.allclose() function
# importing numpy as geek
# and numpy.ma module as ma
import numpy as geek
import numpy.ma as ma
a = geek.ma.array([1e10, 1e-8, 42.0], mask = [0, 0, 1])
b = geek.ma.array([1.00001e10, 1e-9, -42.0], mask = [0, 0, 1])
gfg = geek.ma.allclose(a, b, masked_equal = False)
print (gfg)
输出 :
False