numpy.testing.assert_almost_equal#
- тестирование.assert_almost_equal(фактический, желаемый, десятичный=7, err_msg='', verbose=True)[источник]#
Вызывает AssertionError, если два элемента не равны с заданной точностью.
Примечание
Рекомендуется использовать один из
assert_allclose,assert_array_almost_equal_nulpилиassert_array_max_ulpвместо этой функции для более согласованных сравнений с плавающей точкой.Тест проверяет, что элементы фактический и желаемый удовлетворяют:
abs(desired-actual) < float64(1.5 * 10**(-decimal))
Это более мягкий тест, чем изначально документировано, но согласуется с фактической реализацией в
assert_array_almost_equalделал с учетом погрешностей округления. При конфликтующих значениях вызывается исключение. Для ndarrays это делегируется assert_array_almost_equal- Параметры:
- фактическийarray_like
Объект для проверки.
- желаемыйarray_like
Ожидаемый объект.
- десятичныйint, необязательный
Желаемая точность, по умолчанию 7.
- err_msgstr, optional
Сообщение об ошибке для вывода в случае неудачи.
- verbosebool, необязательно
Если True, конфликтующие значения добавляются к сообщению об ошибке.
- Вызывает:
- AssertionError
Если actual и desired не равны с заданной точностью.
Смотрите также
assert_allcloseСравните два объекта array_like на равенство с желаемой относительной и/или абсолютной точностью.
assert_array_almost_equal_nulp,assert_array_max_ulp,assert_equal
Примеры
>>> from numpy.testing import assert_almost_equal >>> assert_almost_equal(2.3333333333333, 2.33333334) >>> assert_almost_equal(2.3333333333333, 2.33333334, decimal=10) Traceback (most recent call last): ... AssertionError: Arrays are not almost equal to 10 decimals ACTUAL: 2.3333333333333 DESIRED: 2.33333334
>>> assert_almost_equal(np.array([1.0,2.3333333333333]), ... np.array([1.0,2.33333334]), decimal=9) Traceback (most recent call last): ... AssertionError: Arrays are not almost equal to 9 decimals Mismatched elements: 1 / 2 (50%) Mismatch at index: [1]: 2.3333333333333 (ACTUAL), 2.33333334 (DESIRED) Max absolute difference among violations: 6.66669964e-09 Max relative difference among violations: 2.85715698e-09 ACTUAL: array([1. , 2.333333333]) DESIRED: array([1. , 2.33333334])