【发布时间】:2021-10-09 04:35:42
【问题描述】:
我想先对其进行规范化,然后对其执行 PCA。我上网google了一下,发现我们需要将数据帧的转置传递到sklearn.preprocessing.StandardScaler()函数中。
这是我现在的代码:
scale_df = sklearn.preprocessing.StandardScaler().fit_transform(df.iloc[:, 1:col].T)
pca = sklearn.decomposition.PCA()
pca_data = pca.fit_transform(scale_df.T)
这是我不确定的部分。首先,为什么我们需要将数据的转置传递给 StandardScaler()?其次,我们将数据的转置传入其中后,我们得到的缩放后的数据帧仍然是转置的,这会不会影响我们的PCA结果?我们是否应该在将其传递给 PCA 之前将其转回正常状态?
【问题讨论】:
标签: python machine-learning scikit-learn normalization pca