R

計算 PCA 方差解釋 [重複]

  • January 4, 2017

我在這里通讀了關於計算 PCA 輸出解釋的方差的解釋。我認為我做對了,但可能在我對 R 輸出的解釋中有所偏差。

在下面的示例中,我想計算由 USArrests 數據集的第一個主成分解釋的方差百分比。

pca <- prcomp(USArrests, scale = TRUE)
eigs <- pca$sdev^2
eigs[1] / sum(eigs)
[1] 0.6200604

我假設 Rsdev用作特徵值的平方根。所以我將它平方並將第一個值除以總數。這個對嗎?

對,那是正確的。summary.prcomp也帶來了這些信息:

summary(pca)
#Importance of components:
# PC1 PC2 PC3 PC4
#Standard deviation 1.5749 0.9949 0.59713 0.41645
#Proportion of Variance 0.6201 0.2474 0.08914 0.04336
#Cumulative Proportion 0.6201 0.8675 0.95664 1.00000

相比於

rbind(
 SD = sqrt(eigs),
 Proportion = eigs/sum(eigs),
 Cumulative = cumsum(eigs)/sum(eigs))

# [,1] [,2] [,3] [,4]
#SD 1.5748783 0.9948694 0.5971291 0.41644938
#Proportion 0.6200604 0.2474413 0.0891408 0.04335752
#Cumulative 0.6200604 0.8675017 0.9566425 1.00000000

引用自:https://stats.stackexchange.com/questions/254592

comments powered by Disqus