Каким образом функция solve () создает коэффициенты корреляции факторов в функции factanal ()? - PullRequest
0 голосов
/ 16 октября 2018

Использование функции factanal () в R дает факторные корреляции:

> set.seed(500)
> tmp = cbind(rnorm(200,2,1.5),rnorm(200,2,1.5),rnorm(200,2,1.5),rnorm(200,2,1.5),rnorm(200,2,1.5),rnorm(200,2,1.5))
> print(factanal(tmp, 3, rotation="promax"))

Call:
factanal(x = tmp, factors = 3, rotation = "promax")

Uniquenesses:
[1] 0.796 0.889 0.966 0.935 0.740 0.005

Loadings:
     Factor1 Factor2 Factor3
[1,]                  0.441 
[2,]          0.311  -0.114 
[3,]                  0.139 
[4,]                  0.258 
[5,]          0.495         
[6,]  0.999                 

               Factor1 Factor2 Factor3
SS loadings      1.010   0.353   0.300
Proportion Var   0.168   0.059   0.050
Cumulative Var   0.168   0.227   0.277

Factor Correlations:
        Factor1 Factor2 Factor3
Factor1   1.000  -0.128   0.117
Factor2  -0.128   1.000   0.118
Factor3   0.117   0.118   1.000

The degrees of freedom for the model is 0 and the fit was 8e-04 

После некоторого поиска я обнаружил, что следующий код производит факторные корреляции:

tmat <- solve(tmp$rotmat)
 R <- tmat %*% t(tmat)

Может кто-нибудь пожалуйстаОбъясните мне, как функция solve (), использующая матрицу вращения, выдает коэффициенты корреляции факторовИ почему это приводит к различным факторным корреляциям по сравнению с непосредственно коррелирующими факторными показателями?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...