ValueError: матрицы не выровнены для ошибки копирования и x

Я получил значение ValueError, как показано ниже.

ValueError: матрицы не выровнены для ошибки копирования

Это было прослежено до следующей строки (я не писал этот код, я пытаюсь его использовать):

x1[:] = _dotproduct(x1, u) 

Точечный продукт похож на numpy dot product, он работает FINE, printing _dotproduct(x1, u) дает правильный ответ. Это x1[:] который не работает.

Что означает [:] ? Я этого никогда не видел.

Также как я могу решить ошибку выравнивания?

Редактировать:
Я теперь проследил ошибку до x1[:] , поэтому вместо этого могу сделать следующее:

 hh=len(x1) 

x1[0:hh]=_dotproduct(x1, u) ?

One Solution collect form web for “ValueError: матрицы не выровнены для ошибки копирования и x”

В этом случае, поскольку он находится в левой части знака = , это назначение среза. Объект x1 остается одним и тем же объектом, но все его содержимое заменяется последовательностью справа. Без [:] x1 будет назначаться совершенно другому объекту.

Использование назначения среза означает, что если в вашей программе есть другие ссылки на одну и ту же переменную, все они будут видеть новое содержимое. Например, вызывающий объект переходит в контейнер, и функция заменяет его содержимое. Это было бы невозможно без назначения среза.

  • Может ли numpy.savetxt использоваться для N-мерных ndarrays с N> 2?
  • Использовать код Python в C / C ++
  • Конечные разностные функции на языке Python?
  • Кортежи замкнутых непрерывных интервалов
  • python numpy: как построить большой диагональный массив (матрицу) из двух небольших массивов
  • Должен ли я переключиться на Python?
  • Производный массив в python?
  • Matplotlib: `pcolormesh.get_array ()` возвращает сплющенный массив - как вернуть данные 2D?
  • Правильный способ генерации случайных чисел в Cython?
  • Разъяснение в учебнике Theano
  • рекурсивная векторизация python с таймсериями
  • Python - лучший язык программирования в мире.