Как объявить массив numpy с заданным размером?

Мне надо создать массив типа (3, 3, 1). Когда я объявляю data = np.array([[[]]]), то размер массива (1, 1, 0).

Нормально, задать размер массиву можно только, если сразу при создании записать в него значения, но мне это не подходит, т. к. массив я заполняю дальше в коде. При попытке изменить параметр shape студия выдает ошибку:

cannot reshape array of size 0 into shape (3,3,1)

Как объявить массив numpy размером (3,3,1) без заполнения сразу при создании?


Ответы (1 шт):

Автор решения: MaxU

Вариант 1: неинициализированные значения

a = np.empty((3,3,1))

Вариант 2: нули

a = np.zeros((3,3,1))

Вариант 3: заполняем значением (параметр: fill_value )

a = np.full((3,3,1), fill_value=np.nan)

PS в первом варианте значения матрицы могут иметь случайные (неинициализированные) значения.

→ Ссылка