numpy.ma.allclose
-
ma.allclose(a, b, masked_equal=True, rtol=1e-05, atol=1e-08)[source] -
Возвращает True, если два массива попарно равны с заданной точностью.
Эта функция эквивалентна
allclose, за исключением того, что значения с маской обрабатываются как равные (по умолчанию) или не равные в зависимости от аргументаmasked_equal.- Параметры
-
-
a, barray_like -
Вводные массивы для сравнения.
-
masked_equalbool, optional -
Указывается, рассматриваются ли значения с маской в
aиbкак равные (True) или нет (False). По умолчанию они считаются равными. -
rtolfloat, optional -
Относительная точность. Относительная разница равна
rtol * b. По умолчанию 1e-5. -
atolfloat, optional -
Абсолютная точность. Абсолютная разница равна
atol. По умолчанию 1e-8.
-
- Возвращает
-
-
ybool -
Возвращает True, если два массива равны с заданной точностью, иначе False. Если любой из массивов содержит NaN, возвращается False.
-
См. также
-
all,any -
numpy.allclose -
немаскированный аналог
allclose.
Примечания
Если следующее уравнение истинно поэлементно, то
allcloseвозвращает True:absolute(`a` - `b`) <= (`atol` + `rtol` * absolute(`b`))
Возвращает True, если все элементы
aиbравны с учетом заданных допусков.Примеры
>>> a = np.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 = np.ma.array([1e10, 1e-8, -42.0], mask=[0, 0, 1]) >>> np.ma.allclose(a, b) False>>> a = np.ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1]) >>> b = np.ma.array([1.00001e10, 1e-9, -42.0], mask=[0, 0, 1]) >>> np.ma.allclose(a, b) True >>> np.ma.allclose(a, b, masked_equal=False) False
Значения с маской не сравниваются напрямую.
>>> a = np.ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1]) >>> b = np.ma.array([1.00001e10, 1e-9, 42.0], mask=[0, 0, 1]) >>> np.ma.allclose(a, b) True >>> np.ma.allclose(a, b, masked_equal=False) False
© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.ma.allclose.html