R
計算 PCA 方差解釋 [重複]
我在這里通讀了關於計算 PCA 輸出解釋的方差的解釋。我認為我做對了,但可能在我對 R 輸出的解釋中有所偏差。
在下面的示例中,我想計算由 USArrests 數據集的第一個主成分解釋的方差百分比。
pca <- prcomp(USArrests, scale = TRUE) eigs <- pca$sdev^2 eigs[1] / sum(eigs) [1] 0.6200604
我假設 R
sdev
用作特徵值的平方根。所以我將它平方並將第一個值除以總數。這個對嗎?
對,那是正確的。
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