我试图用PCA计算一个指数。我使用‘mtcar’作为我的数据集。这是我的密码:
pca_mt<- prcomp(mtcars[,c(1:7,10,11)], center = TRUE,scale. = TRUE)我如何获得每个变量的权重,以求它们之和以计算索引?如果有人能解释一下pca_mt$rotation,pca_mt$x是什么,我很感激。
发布于 2021-12-09 09:20:57
也许这有助于您更好地理解pca_mt$rotation,pca_mt$x是什么:
data <- mtcars[,c(1:7,10,11)]
pca_mt<- prcomp(data, center = F,scale. = F)
sum(data[1,] * pca_mt$rotation[,1]) == pca_mt$x[1,1]
[1] TRUE请注意,这只是因为center=F和scale.=F才起作用。
为了进一步阅读,我建议https://builtin.com/data-science/step-step-explanation-principal-component-analysis首先了解PCA是什么。
因此,要了解PCA组件可以解释多少方差,可以使用
summary(pca_mt)
Importance of components:
PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 PC9
Standard deviation 310.1169 40.88309 15.83774 2.12821 0.99854 0.74271 0.4412 0.2913 0.2168
Proportion of Variance 0.9803 0.01704 0.00256 0.00005 0.00001 0.00001 0.0000 0.0000 0.0000
Cumulative Proportion 0.9803 0.99738 0.99993 0.99998 0.99999 1.00000 1.0000 1.0000 1.0000第一组分解释了数据的98,03%,下一组(98,03%-99,738%)等。因此,使用第一个组件,您可以解释数据中几乎所有的差异。
https://stackoverflow.com/questions/70286925
复制相似问题