Я пытаюсь преобразовать массив форм (1, 400) в (20, 20) с массивами numpy и пытаюсь найти правильный синтаксис.
Примите во внимание следующее:
import numpy as np
d_array = np.ones((1 + 10 * (20 + 1), 1 + 10 * (20 + 1)))
# tA and tB have shape (20,)
tA = np.array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])
tB = np.array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])
# X is a matrix of shape (5000, 400)
X = np.loadtxt(open("X.csv", "rb"), delimiter=",", skiprows=0)
Попытка назначить и изменить форму одновременно не похоже на то, как я это делаю (ниже) . Я не уверен в правильном синтаксисе для этого типа операции. Пожалуйста, помогите мне понять, что я здесь делаю неправильно.
Выдает ошибку: массив значений формы (20,20) не может быть передан для индексации результата формы (20,)
# save an array of first row from sample data of shape(1, 400)
xA = np.array([X[0, :]])
# try to assign both tA of shape(20,) and tB of shape(20,)
# a reshaped version of xA (20x20 = 400)
d_array [tA, tB] = np.reshape(xA, (20, 20))
Я просто пытаюсь создать 20 измененных массивов, содержащих 20 индексов каждого массива (20x20) = 400. Я новичок в NumPy, но я рад узнать больше. Спасибо за любую помощь, которую может предоставить любой!