ValueError: невозможно скопировать последовательность размером 5 на ось массива с размером 3 в Numpy - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь следующие команды в Numpy. Сообщается об ошибке при назначении новой последовательности срезу массива. Ожидается ошибка, однако я не мог понять, почему измерение сообщается с ошибкой. Почему измерение 3 сообщается с ошибкой, массив имеет 1 измерение

b = np.array([1, 2, 3, 4, 5])
print(b.ndim) # returns 1
b[2:] = [3, 4, 5, 6, 7]

>> ValueError: cannot copy sequence with size 5 to array axis with dimension 3

1 Ответ

2 голосов
/ 26 февраля 2020

Вы пытаетесь передать массив размера 5 на массив размера 3, а numpy пытается помочь с правилами вещания. См. документацию по трансляции . Если вы присваиваете правильное количество значений, numpy не пытается делать какие-либо необычные трансляции.

b[2:] = [3, 4, 5]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...