Spec-Zone.ru › NumPy 1.14

numpy.testing.assert_array_equal

numpy.testing.assert_array_equal(x, y, err_msg='', verbose=True) [source]

Вызывает AssertionError, если два объекта array_like не равны.

Даны два объекта array_like, проверяется, что форма равна и все элементы этих объектов равны. Исключение генерируется при несоответствии форм или конфликтующих значениях. В отличие от стандартного использования в numpy, NaN сравниваются как числа, исключение не генерируется, если оба объекта имеют NaN в одних и тех же позициях.

Рекомендуется соблюдать обычные меры предосторожности при проверке равенства с числами с плавающей запятой.

Параметры:

x : array_like

Проверяемый фактический объект.

y : array_like

Желаемый, ожидаемый объект.

err_msg : str, необязательно

Сообщение об ошибке, которое будет выведено в случае неудачи.

verbose : bool, необязательно

Если True, конфликтующие значения добавляются в сообщение об ошибке.

Исключения:

AssertionError

Если фактический и желаемый объекты не равны.

См. также

assert_allclose
Сравнение двух объектов array_like на равенство с заданной относительной и/или абсолютной точностью.

assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal

Примеры

Первый assert не вызывает исключение:

>>> np.testing.assert_array_equal([1.0,2.33333,np.nan],
...                               [np.exp(0),2.33333, np.nan])

Assert терпит неудачу из-за числовой неточности с плавающей запятой:

>>> np.testing.assert_array_equal([1.0,np.pi,np.nan],
...                               [1, np.sqrt(np.pi)**2, np.nan])
...
<type 'exceptions.ValueError'>:
AssertionError:
Arrays are not equal

(mismatch 50.0%)
 x: array([ 1.        ,  3.14159265,         NaN])
 y: array([ 1.        ,  3.14159265,         NaN])

Для таких случаев используйте assert_allclose или одну из функций nulp (число значений с плавающей запятой):

>>> np.testing.assert_allclose([1.0,np.pi,np.nan],
...                            [1, np.sqrt(np.pi)**2, np.nan],
...                            rtol=1e-10, atol=0)

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.testing.assert_array_equal.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API