原文:https://docs.scipy.org/doc/numpy/reference/generated/numpy.ma.allclose.html
校对:(虚位以待)
numpy.ma.
allclose
(a, b, masked_equal=True, rtol=1e-05, atol=1e-08)[source]如果两个数组在元素方面在公差内相等,则返回True。
此函数等效于allclose
,但根据masked_equal
参数,被屏蔽的值被视为等于(默认)或不等。
参数: | a,b:array_like
masked_equal:bool,可选
rtol:float,可选
atol:float,可选
|
---|---|
返回: | y:bool
|
笔记
如果以下方程是元素方式为True,则allclose
返回True:
absolute(`a` - `b`) <= (`atol` + `rtol` * absolute(`b`))
如果a和b的所有元素等于给定容差,则返回True。
例子
>>> a = ma.array([1e10, 1e-7, 42.0], mask=[0, 0, 1])
>>> a
masked_array(data = [10000000000.0 1e-07 --],
mask = [False False True],
fill_value = 1e+20)
>>> b = ma.array([1e10, 1e-8, -42.0], mask=[0, 0, 1])
>>> ma.allclose(a, b)
False
>>> a = ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1])
>>> b = ma.array([1.00001e10, 1e-9, -42.0], mask=[0, 0, 1])
>>> ma.allclose(a, b)
True
>>> ma.allclose(a, b, masked_equal=False)
False
掩蔽值不直接比较。
>>> a = ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1])
>>> b = ma.array([1.00001e10, 1e-9, 42.0], mask=[0, 0, 1])
>>> ma.allclose(a, b)
True
>>> ma.allclose(a, b, masked_equal=False)
False