首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >'FactoMineR‘包中的旋转

'FactoMineR‘包中的旋转
EN

Stack Overflow用户
提问于 2014-03-31 20:37:21
回答 1查看 3.8K关注 0票数 9

提前谢谢。我使用了'FactoMineR‘包中的'PCA’函数来获得主成分得分。我试着在这个论坛上阅读了package details和类似的问题,但找不到旋转提取的组件(无论是正交的还是倾斜的)的代码。

我知道‘心理’包中的'princomp‘函数和’unit‘函数具有旋转能力,但我真的很喜欢'PCA’中将变量缩放到单位方差的能力。任何帮助都将不胜感激。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-06-27 23:07:47

IIUC:

代码语言:javascript
复制
library(FactoMineR)
data(iris)
Iris <- iris[,1:4]
res <- PCA(Iris, graph=F)
#rotation
t(apply(res$var$coord, 1, function(x) {x/sqrt(res$eig[,1])}))
                  Dim.1      Dim.2      Dim.3      Dim.4
Sepal.Length  0.5210659 0.37741762 -0.7195664 -0.2612863
Sepal.Width  -0.2693474 0.92329566  0.2443818  0.1235096
Petal.Length  0.5804131 0.02449161  0.1421264  0.8014492
Petal.Width   0.5648565 0.06694199  0.6342727 -0.5235971

#check
prcomp(Iris, scale=T)
Rotation:
                    PC1         PC2        PC3        PC4
Sepal.Length  0.5210659 -0.37741762  0.7195664  0.2612863
Sepal.Width  -0.2693474 -0.92329566 -0.2443818 -0.1235096
Petal.Length  0.5804131 -0.02449161 -0.1421264 -0.8014492
Petal.Width   0.5648565 -0.06694199 -0.6342727  0.5235971

如果您希望从PCA对象获取加载,则可以使用另一行代码:

代码语言:javascript
复制
sweep(res$var$coord, 2, sqrt(res$eig[,1]),'/')
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22761733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档