[R] oblique.scores argument for fa function in psych package
Mark Seeto
markseeto at gmail.com
Thu Nov 14 03:11:42 CET 2013
Dear R help,
I'm using version 1.3.10.12 of the psych package. The help page for fa
says that when calculating factor scores, oblique.scores=FALSE causes
the pattern matrix to be used, and oblique.scores=TRUE causes the
structure matrix to be used. However, when I try it, it seems to be
the other way around.
Example:
###############################################################################
library(psych)
set.seed(1)
n <- 100
Y <- data.frame(y1 = rnorm(n),
y2 = rnorm(n),
y3 = rnorm(n),
y4 = rnorm(n),
y5 = rnorm(n),
y6 = rnorm(n))
fa1 <- fa(Y, nfactors=2, rotate="oblimin", fm="minres", oblique.scores=FALSE)
fa2 <- fa(Y, nfactors=2, rotate="oblimin", fm="minres", oblique.scores=TRUE)
fa1$scores[1:3, ]
fa2$scores[1:3, ]
(scale(Y) %*% solve(cor(Y)) %*% fa1$loadings)[1:3, ] # not the same
as fa1$scores[1:3, ]
(scale(Y) %*% solve(cor(Y)) %*% fa1$Structure)[1:3, ] # same as
fa1$scores[1:3, ]
(scale(Y) %*% solve(cor(Y)) %*% fa2$loadings)[1:3, ] # same as
fa2$scores[1:3, ]
(scale(Y) %*% solve(cor(Y)) %*% fa2$Structure)[1:3, ] # not the same
as fa2$scores[1:3, ]
###############################################################################
Have I misunderstood something?
Thanks,
Mark Seeto
More information about the R-help
mailing list