繁体   English   中英

相关矩阵的主成分分析

[英]Principal component analysis on a correlation matrix

许多功能都可以对R中的原始数据执行主成分分析(PCA)。通过原始数据,我可以理解任何数据帧或矩阵,这些数据行或矩阵的行由观察索引,而列由度量标识。 我们可以对R中的相关矩阵执行PCA吗? 哪个函数可以接受相关矩阵作为R中的输入?

如评论中所述,您可以使用

ii <- as.matrix(iris[,1:4])
princomp(covmat=cor(ii))

这将为您提供与princomp(iris,cor=TRUE)等效的结果(这不是您想要的-后者使用完整的数据矩阵,但返回将协方差矩阵转换为相关性时计算出的值)。


如果您具有相关矩阵,也可以手动进行所有相关计算:

cc <- cor(ii)
e1 <- eigen(cc)

标准偏差:

sqrt(e1$values)
[1] 1.7083611 0.9560494 0.3830886 0.1439265

方差比例:

e1$values/sum(e1$values)
[1] 0.729624454 0.228507618 0.036689219 0.005178709

您可以通过e1$vectors获得负载。 通过as.matrix(iris) %*% e1$vectors)计算得分(根据此CV问题 )(这不会princomp()$scores给出数值上相同的答案-本征矢量的缩放比例不同-但得出的结果相同)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM