Factor Scores for Latent Variables

Share:

Description

Calculate factor scores or factor-score coefficients for the latent variables in a structural-equation model.

Usage

1
2
3
4
fscores(model, ...)

## S3 method for class 'sem'
fscores(model, data, center = TRUE, scale = FALSE, ...)

Arguments

model

an object of class "sem", produced by the sem function.

data

an optional numeric data frame or matrix containing the observed variables in the model; if present, the estimated factor scores are returned; if absent, the factor-score coefficients are returned.

center

if TRUE, the default, the means of the observed variables are subtracted prior to computing factor scores. One would normally use this option if the model is estimated from a covariance or correlation matrix among the observed variables.

scale

if TRUE, the possibly centered variables are divided by their room-mean-squares; the default is FALSE. One would normally use this option if the model is estimated from a correlation matrix among the observed variables. Centering and scaling are performed by the scale function.

...

arguments to pass down.

Details

Factor-score coefficients are computed by the “regression” method as C^-1 C*, where C is the model-implied covariance or moment matrix among the observed variables and C* is the matrix of model-implied covariances or moments between the observed and latent variables.

Value

Either a matrix of estimated factor scores (if the data argument is supplied) or a matrix of factor-score coefficients (otherwise).

Author(s)

John Fox jfox@mcmaster.ca

References

Bollen, K. A. (1989) Structural Equations With Latent Variables. Wiley.

See Also

sem, scale

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
	   ## Not run: 

S.wh <- read.moments(names=c('Anomia67','Powerless67','Anomia71',
                                    'Powerless71','Education','SEI'))
   11.834                                    
    6.947    9.364                            
    6.819    5.091   12.532                    
    4.783    5.028    7.495    9.986            
   -3.839   -3.889   -3.841   -3.625   9.610     
  -21.899  -18.831  -21.748  -18.775  35.522  450.288

# This model in the SAS manual for PROC CALIS

model.wh.1 <- specify.model()
    Alienation67   ->  Anomia67,      NA,     1
    Alienation67   ->  Powerless67,   NA,     0.833
    Alienation71   ->  Anomia71,      NA,     1
    Alienation71   ->  Powerless71,   NA,     0.833 
    SES            ->  Education,     NA,     1     
    SES            ->  SEI,           lamb,   NA
    SES            ->  Alienation67,  gam1,   NA
    Alienation67   ->  Alienation71,  beta,   NA
    SES            ->  Alienation71,  gam2,   NA
    Anomia67       <-> Anomia67,      the1,   NA
    Anomia71       <-> Anomia71,      the1,   NA
    Powerless67    <-> Powerless67,   the2,   NA
    Powerless71    <-> Powerless71,   the2,   NA
    Education      <-> Education,     the3,   NA
    SEI            <-> SEI,           the4,   NA
    Anomia67       <-> Anomia71,      the5,   NA
    Powerless67    <-> Powerless71,   the5,   NA
    Alienation67   <-> Alienation67,  psi1,   NA
    Alienation71   <-> Alienation71,  psi2,   NA
    SES            <-> SES,           phi,    NA
    
                        
sem.wh.1 <- sem(model.wh.1, S.wh, 932)

fscores(sem.wh.1)

##                Alienation67 Alienation71         SES
##    Anomia67     0.413112363  0.048268330 -0.05212632
##    Powerless67  0.345402079  0.040014780 -0.04355578
##    Anomia71     0.052663484  0.430618716 -0.03999218
##    Powerless71  0.043704122  0.360044434 -0.03339943
##    Education   -0.074921670 -0.063969383  0.50571037
##    SEI         -0.004638977 -0.003960837  0.03131242

   
## End(Not run)