2015-11-03 170 views
0

我正在使用scikit学习PCA并尝试选择满足1-(和i 1到k Sii)/(sum j 1到n Sjj)的最小元件数目, < = 0.01其中S是svd对角矩阵,以保持99%的方差。sklearn PCA - 计算选择k时保留的方差%

  1. Scikit学习函数是否返回给定方差保留%阈值的最小分量?
  2. 有没有更有效的方法来提出n_component?

谢谢。

回答

1

只需将n_components设置为float,它将用作解释方差的下限。

scikit-learn documentation

n_components:INT,无或字符串

组件的数量,以保持。如果未设置n_components所有组件被保持: n_components ==分钟(N_SAMPLES次,n_features) 如果n_components ==“MLE”,敏卡的MLE用来猜测尺寸如果0 < n_components < 1,选择部件的数量使得需要解释的变异量大于由n_components指定的百分比

+0

在代码中,我们是否指定我们需要x%的方差保留? – user1825567

+1

答案中的字面意思就是这样。将n_components作为float传递给PCA构造函数。 – lejlot