1

I'm calculating a factor analysis of several variables in R. I want to determine each case's value on the latent variable. When I run the factor analysis, I receive factor scores. The factor scores do not have the same metric as the raw data or the latent variable. How can I rescale the factor scores to correspond to the metric of the latent variable (same mean, sd, and range) to determine each case's value on the latent variable?

Here's a small example:

v1 <- c(1,1,1,1,1,1,1,1,1,1,3,3,3,3,3,4,5,6)
v2 <- c(1,2,1,1,1,1,2,1,2,1,3,4,3,3,3,4,6,5)
v3 <- c(3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,5,4,6)
v4 <- c(3,3,4,3,3,1,1,2,1,1,1,1,2,1,1,5,6,4)
v5 <- c(1,1,1,1,1,3,3,3,3,3,1,1,1,1,1,6,4,5)
v6 <- c(1,1,1,2,1,3,3,3,4,3,1,1,1,2,1,6,5,4)
m1 <- cbind(v1,v2,v3,v4,v5,v6)

factanal(~v1+v2+v3+v4+v5+v6, factors = 1, scores = "Bartlett")$scores

Thanks in advance!

itpetersen
  • 447
  • 8
  • 17
  • It is not clear what properties you demand for the factor scores to be `same metric as the raw data`; `or the latent variable` is even more mystic (isn't factor a latent variable?). Factor scores of a factor are known to be centered and have sum-of-squares equal to SSregression of these scores on the IVs. Yet another question: why did you choose to do maximum likelihood extraction `factanal` with data so skewed as yours? – ttnphns Mar 13 '13 at 08:17
  • Thanks for the comment. I want to rescale the factor scores to have the same metric as the latent factor or, at the least, to have the same metric as the raw data. The data in the example are not my real data, that's just an example. What would you suggest in the case of skewed data? In the example, the raw data range from 1 to 6. I would like my factor scores to have the same range (1-6), mean, and sd as the latent factor or raw data. Does that make sense? Thanks! – itpetersen Mar 13 '13 at 20:16
  • 1
    1) Latent factor _is_ its factor scores, so how can you write `I would like my factor scores to have the same...as the latent factor` - I don't grasp it. 2) You can rescale the scores to a wished range _or_ to wished mean and sd, but not to this and that at the same time, - it is impossible. – ttnphns Mar 13 '13 at 21:41
  • I was interpreting latent factor as in the latent variable from CFA or SEM, where the latent variable can be scaled to have the metric of the average of the indicators (e.g., [effects coding](http://www.agencylab.ku.edu/~agencylab/manuscripts/(Little,%20Slegers,%20Card,%202006).pdf)). Then, the factor scores would be on a more meaningful metric. Your point that I cannot rescale the range at the same time as the mean and sd was very helpful. The range is more important to me, and I found how rescale it: http://stats.stackexchange.com/questions/25894/changing-the-scale-of-a-variable-to-0-100 – itpetersen Mar 13 '13 at 23:19

0 Answers0