Я хочу построить свой собственный PCA на python для набора данных, имеющего форму (1934,32). Numpy массив (двоичный файл изображения). В PCA мне нужно рассчитать матрицу рассеяния. У меня есть код, который отлично работает на изображениях и массив размеров (3, х). но не работает на моем.
Я попытался изменить метод np.zeros и изменить форму до 32 и 1934, но ничего не работает. Вот код, который показывает, что я сейчас использую
for i in range(X.shape[1]):
scatter_matrix += (X[:,i].reshape(3,1) - mean_vector).dot((X[:,i].reshape(3,1) - mean_vector).T)
print('Scatter Matrix:\n', scatter_matrix)
Ошибка: «Невозможно преобразовать массив размером 1934 в форму (3,1)»