Я сравнивал некоторые данные с использованием numpy.testing.assert_array_equal . Данные были прочитаны из матового файла с использованием scipy.io.loadmat . Мат был сгенерирован следующим образом: < /p>
Traceback (most recent call last):
File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 851, in assert_array_compare
val = comparison(x, y)
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
...
File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 1057, in assert_array_equal
assert_array_compare(operator.__eq__, actual, desired, err_msg=err_msg,
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
verbose=verbose, header='Arrays are not equal',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
strict=strict)
^^^^^^^^^^^^^^
File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 929, in assert_array_compare
raise ValueError(msg)
ValueError:
error during assertion:
Traceback (most recent call last):
File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 851, in assert_array_compare
val = comparison(x, y)
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Arrays are not equal
ACTUAL: array([[(array([[1., 2.],
[3., 4.]]),)]], dtype=[('MyField', 'O')])
DESIRED: array([[(array([[1., 2.],
[3., 4.]]),)]], dtype=[('MyField', 'O')])
Я первоначально подозревал, что проблема может быть связана с использованием структурированного массива Numpy или, возможно, объекта dtype. Однако я не слишком уверен в этом, так как тест сдал переменную b .
Я не знаю, почему он не работает только для этого конкретного случая, поскольку STDOUT выглядит визуально идентично. Я был бы очень признателен за некоторую помощь здесь о понимании основной проблемы здесь, а также объяснено правильным способом обработки таких сравнений.
Спасибо!
Я сравнивал некоторые данные с использованием numpy.testing.assert_array_equal . Данные были прочитаны из матового файла с использованием scipy.io.loadmat . Мат был сгенерирован следующим образом: < /p> [code]a = [1, 2; 3, 4]; b = struct('MyField', 10); c = struct('MyField', [1, 2; 3, 4]); save('example.mat', 'a', 'b', 'c'); [/code] Для тестирования я вручную сгенерировал ожидаемый массив Numpy, чтобы соответствовать тому, как scipy.io.loadmat выводит их: [code]import numpy as np from numpy.testing import assert_array_equal from scipy.io import loadmat
a = np.array([[1., 2.], [3., 4.]]) b = np.array([[(np.array(10.0),)]], dtype=[("MyField", "O")]) c = np.array( [[ (np.array([[1., 2.], [3., 4.]]),) ]], dtype=[("MyField", "O")])
matdict = loadmat("example.mat", mat_dtype=True)
assert_array_equal(matdict["a"], a) # Passes assert_array_equal(matdict["b"], b) # Passes assert_array_equal(matdict["c"], c) # Fails [/code] Это сравнение не удается только для переменной c , выбрасывая следующую ошибку: [code]Traceback (most recent call last): File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 851, in assert_array_compare val = comparison(x, y) ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
During handling of the above exception, another exception occurred:
Traceback (most recent call last): ... File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 1057, in assert_array_equal assert_array_compare(operator.__eq__, actual, desired, err_msg=err_msg, ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ verbose=verbose, header='Arrays are not equal', ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ strict=strict) ^^^^^^^^^^^^^^ File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 929, in assert_array_compare raise ValueError(msg) ValueError: error during assertion:
Traceback (most recent call last): File ".../python3.13/site-packages/numpy/testing/_private/utils.py", line 851, in assert_array_compare val = comparison(x, y) ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Arrays are not equal ACTUAL: array([[(array([[1., 2.], [3., 4.]]),)]], dtype=[('MyField', 'O')]) DESIRED: array([[(array([[1., 2.], [3., 4.]]),)]], dtype=[('MyField', 'O')]) [/code] Я первоначально подозревал, что проблема может быть связана с использованием структурированного массива Numpy или, возможно, объекта dtype. Однако я не слишком уверен в этом, так как тест сдал переменную b . Я не знаю, почему он не работает только для этого конкретного случая, поскольку STDOUT выглядит визуально идентично. Я был бы очень признателен за некоторую помощь здесь о понимании основной проблемы здесь, а также объяснено правильным способом обработки таких сравнений. Спасибо!
Я сравнивал некоторые данные с использованием numpy.testing.assert_array_equal . Данные были прочитаны из матового файла с использованием scipy.io.loadmat . Мат был сгенерирован следующим образом:
a = ;
b = struct('MyField', 10);
c =...
Мой первый вопрос, пожалуйста, терпите меня.
Я использую .NET Aspire Apphost Project. Я пишу тест, чтобы проверить токен Окта. Проблема в том, когда я проверяю запрос. Ведь в контроллере отсутствуют. Я отправляю значение заголовка авторизации, но он...
В настоящее время я делаю простой модульный тест для моего приложения для хранения рецептов, чтобы проверить мой расчет калорий. Тем не менее, я продолжаю сталкиваться с вышеупомянутой проблемой и не уверен, что я могу сделать, чтобы решить его....
В настоящее время я делаю простой модульный тест для моего приложения для хранения рецептов, чтобы проверить мой расчет калорий. Тем не менее, я продолжаю сталкиваться с вышеупомянутой проблемой и не уверен, что я могу сделать, чтобы решить его....
У меня есть двумерный массив строк. Его следует хранить таким образом, чтобы его можно было сортировать по убыванию второго элемента массива, а если есть связь, то лексикографически по первому элементу. Мой Java-код выглядит следующим образом:...