是否了解PCA(sklearn)的“ components _”?

时间:2018-08-07 12:25:49

标签: scikit-learn pca

可能有人向我解释PCA(sklearn)的变量components_。 sklearn(http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html)的官方URL确实使我感到困惑。

所以我有一个包含1000个特征的原始数据集,名为df

我做到了:

my_pca = PCA(n_components = 2)
my_pca.fit_transform (df)
my_pca.components_.shape # (2, 1000)

我可以将component_的每个元素解释为原始特征对每个PCA值的影响吗?

谢谢

1 个答案:

答案 0 :(得分:2)

计算PCA时,基本上是计算(相关或协方差)矩阵的特征值和特征向量。

因此,实际上您最多可以计算1000个特征向量。当您set n_components=2时 您隐式地说,您只想计算前两个特征向量(与它们关联的最大特征值的向量)

components_包含这些特征向量。

它们很重要,因为它们会编码您的投影规则。通过应用简单的矩阵乘法,它们使您可以从df中样本所在的初始空间到缩减的二维空间。

proyected_sample = a_sample * np.transpose( my_pca.components_ )