我如何在迭代和做PCA后正确返回数组



我有一个名为x_train的3d数组(样本,时间步长,特征),我想在其中迭代并对每个样本的2D数组(时间步长,特征)执行PCA。我有这个代码,但因为它返回一个5x1数组,我有返回值的问题:

from sklearn.decomposition import PCA
pca = PCA(n_components=1)
X_transform_PCA = np.zeros((x_train.shape[0], 1))
for i in range(x_train.shape[0]):
pca = PCA(n_components=1)
f  = pca.fit_transform(x_train[i, :, :])
X_transform_PCA[i,:] = f
print(X_transform_PCA.shape[0])

我明白了。看来这招奏效了。

X_transform_PCA = []
from sklearn.decomposition import PCA
pca = PCA(n_components=1)
for i in range(x_train.shape[0]):
pca = PCA(n_components=1)
f  = pca.fit_transform(x_train[i, :, :])
X_transform_PCA.append(f)
print(X_transform_PCA)

最新更新