numpy.
allclose
(a,b,rtol = 1e-05,atol = 1e-08,equal_nan = False )[源代码] ¶如果两个数组在公差范围内按元素方式相等,则返回True。
公差值是正的,通常很小。将相对差(rtol * abs(b))和绝对差 atol相加,以与a和b之间的绝对差进行比较。
如果NaN位于同一位置,并且,则将NaN视为相等
equal_nan=True
。如果两个数组中的inf位于相同位置且具有相同符号,则将它们视为相等。
输入数组进行比较。
相对公差参数(请参见注释)。
绝对公差参数(请参阅注释)。
是否将NaN相等。如果为True,NaN的在一个将被视为在等于NaN的b输出数组英寸
1.10.0版中的新功能。
如果两个数组在给定的公差范围内相等,则返回True;否则,返回True。否则为假。
笔记
如果以下方程式为元素式True,则allclose返回True。
绝对(a - b)<=(atol + rtol *绝对(b))
上面的方程在a和b中不对称,因此
可能与某些罕见情况不同。allclose(a, b)
allclose(b, a)
a和b的比较使用标准广播,这意味着a和b不必具有相同的形状
即可评估为True。同样适用,
但不适用。allclose(a, b)
equal
array_equal
例子
>>> np.allclose([1e10,1e-7], [1.00001e10,1e-8])
False
>>> np.allclose([1e10,1e-8], [1.00001e10,1e-9])
True
>>> np.allclose([1e10,1e-8], [1.0001e10,1e-9])
False
>>> np.allclose([1.0, np.nan], [1.0, np.nan])
False
>>> np.allclose([1.0, np.nan], [1.0, np.nan], equal_nan=True)
True