在主成分分析后,我试图将原始相关矩阵的变量按照与(已排序)加载矩阵相同的方式进行排序(与print.psych一起显示)。我已经使用了psych包中的以下函数,但我不能让两者对齐。
pc <- principal(myCorrMatrix$correlations, nfactors=15, n.obs=49, rotate="oblimin")
print.psych(pc, cut=0.3, sort=TRUE)
sortedPC <- fa.sort(pc)
sortedMatrix <- mat.sort(myCorrMatrix$correlations, sortedPC)
我不是100%确定mat.sort的第二个参数应该是什么,但我尝试了sortedPC的几个元素无济于事。任何指针都会非常感激!
答案 0 :(得分:0)
不要将fa.sort()
传递给mat.sort()
。 mat.sort()
期望一个fa对象,其中包含$ load。请注意,principal()
还会在结果对象中提供$ loadings。我认为这应该有效:
sortedMatrix <- mat.sort(myCorrMatrix$correlations, pc)
以下是一个例子:
data(Bechtoldt.1)
sorted <- mat.sort(Bechtoldt.1,principal(Bechtoldt.1,5))
cor.plot(sorted)