0
У меня есть 2D массив x
, в котором я хочу, чтобы скопировать содержимое из массива 1D y
:Поместите 1D массив в 2D массив
import numpy as np
x = np.array([[1, 2], [4, 5], [3, 3]], np.int32)
y = np.array([1, 2, 3, 4, 5, 6])
x[:,:] = y # i would like x to be [[1, 2], [3, 4], [5, 6]]
ValueError: could not broadcast input array from shape (6) into shape (3,2)
Как это сделать?
Я бы использовал 'x [...] = y.reshape (x.shape)', чтобы оставаться ближе к исходному намерению. 'x.flat = y' также работает. – hpaulj
@hpaulj Поскольку OP только хотел изменить 'x', я не видел никаких причин назначать' y' его виду. Или у вашего рецепта есть какое-то преимущество здесь, о котором я не знаю? – Kasramvd