Previous Page | Next Page

The CALIS Procedure

Example 25.3 Second-Order Confirmatory Factor Analysis

A second-order confirmatory factor analysis model is applied to a correlation matrix of Thurstone reported by McDonald (1985). Using the LINEQS statement, the three-term second-order factor analysis model is specified in equations notation. The first-order loadings for the three factors, f1, f2, and f3, each refer to three variables, X1-X3, X4-X6, and X7-X9. One second-order factor, f4, reflects the correlations among the three first-order factors. The second-order factor correlation matrix P is defined as a identity matrix. Choosing the second-order uniqueness matrix U2 as a diagonal matrix with parameters U21-U23 gives an unidentified model. To compute identified maximum likelihood estimates, the matrix U2 is defined as a identity matrix. The following statements generate results that are partially displayed in Output 25.3.1 through Output 25.3.4:


   data Thurst(TYPE=CORR);
   title "Example of THURSTONE resp. McDONALD (1985, p.57, p.105)";
      _TYPE_ = 'CORR'; Input _NAME_ $ Obs1-Obs9;
      label Obs1='Sentences' Obs2='Vocabulary' Obs3='Sentence Completion'
            Obs4='First Letters' Obs5='Four-letter Words' Obs6='Suffices'
            Obs7='Letter series' Obs8='Pedigrees' Obs9='Letter Grouping';
      datalines;
   Obs1  1.       .      .      .      .      .      .      .      .
   Obs2   .828   1.      .      .      .      .      .      .      .
   Obs3   .776   .779   1.      .      .      .      .      .      .
   Obs4   .439   .493    .460  1.      .      .      .      .      .
   Obs5   .432   .464    .425   .674  1.      .      .      .      .
   Obs6   .447   .489    .443   .590   .541  1.      .      .      .
   Obs7   .447   .432    .401   .381   .402   .288  1.      .      .
   Obs8   .541   .537    .534   .350   .367   .320   .555  1.      .
   Obs9   .380   .358    .359   .424   .446   .325   .598   .452  1.
   ;
   proc calis data=Thurst method=max edf=212 pestim se;
   lineqs                                                                      
      Obs1 = X1 F1 + E1,                                                        
      Obs2 = X2 F1 + E2,                                                        
      Obs3 = X3 F1 + E3,                                                        
      Obs4 = X4 F2 + E4,                                                        
      Obs5 = X5 F2 + E5,                                                        
      Obs6 = X6 F2 + E6,                                                        
      Obs7 = X7 F3 + E7,                                                        
      Obs8 = X8 F3 + E8,                                                        
      Obs9 = X9 F3 + E9,                                                        
      F1   = X10 F4 + E10,                                                      
      F2   = X11 F4 + E11,                                                      
      F3   = X12 F4 + E12;                                                      
   std                                                                         
      F4      = 1.,                                                            
      E1-E9   = U11-U19,                                                       
      E10-E12 = 3 * 1.;                                                         
   bounds                                                                      
      0. <= U11-U19;                                                            
   run;
   

Output 25.3.1 Optimization
Parameter Estimates 21
Functions (Observations) 45
Lower Bounds 9
Upper Bounds 0

Optimization Start
Active Constraints 0 Objective Function 0.7151823452
Max Abs Gradient Element 0.4067179803 Radius 2.2578762496

Iteration   Restarts Function
Calls
Active
Constraints
  Objective
Function
Objective
Function
Change
Max Abs
Gradient
Element
Lambda Ratio
Between
Actual
and
Predicted
Change
1   0 2 0   0.23113 0.4840 0.1299 0 1.363
2   0 3 0   0.18322 0.0479 0.0721 0 1.078
3   0 4 0   0.18051 0.00271 0.0200 0 1.006
4   0 5 0   0.18022 0.000289 0.00834 0 1.093
5   0 6 0   0.18018 0.000041 0.00251 0 1.201
6   0 7 0   0.18017 6.523E-6 0.00114 0 1.289
7   0 8 0   0.18017 1.085E-6 0.000388 0 1.347
8   0 9 0   0.18017 1.853E-7 0.000173 0 1.380
9   0 10 0   0.18017 3.208E-8 0.000063 0 1.399
10   0 11 0   0.18017 5.593E-9 0.000028 0 1.408
11   0 12 0   0.18017 9.79E-10 0.000011 0 1.414

Optimization Results
Iterations 11 Function Calls 13
Jacobian Calls 12 Active Constraints 0
Objective Function 0.1801712147 Max Abs Gradient Element 0.0000105805
Lambda 0 Actual Over Pred Change 1.4135882439
Radius 0.0002026368    

GCONV convergence criterion satisfied.

Output 25.3.2 Fit Statistics
Example of THURSTONE resp. McDONALD (1985, p.57, p.105)
Identified Second Order Confirmatory Factor Analysis
C = F1 * F2 * P * F2' * F1' + F1 * U2 * F1' + U1, With P=U2=Ide

The CALIS Procedure
Covariance Structure Analysis: Maximum Likelihood Estimation

Fit Function 0.1802
Goodness of Fit Index (GFI) 0.9596
GFI Adjusted for Degrees of Freedom (AGFI) 0.9242
Root Mean Square Residual (RMR) 0.0436
Standardized Root Mean Square Residual (SRMR) 0.0436
Parsimonious GFI (Mulaik, 1989) 0.6397
Chi-Square 38.1963
Chi-Square DF 24
Pr > Chi-Square 0.0331
Independence Model Chi-Square 1101.9
Independence Model Chi-Square DF 36
RMSEA Estimate 0.0528
RMSEA 90% Lower Confidence Limit 0.0153
RMSEA 90% Upper Confidence Limit 0.0831
ECVI Estimate 0.3881
ECVI 90% Lower Confidence Limit .
ECVI 90% Upper Confidence Limit 0.4888
Probability of Close Fit 0.4088
Bentler's Comparative Fit Index 0.9867
Normal Theory Reweighted LS Chi-Square 40.1947
Akaike's Information Criterion -9.8037
Bozdogan's (1987) CAIC -114.4747
Schwarz's Bayesian Criterion -90.4747
McDonald's (1989) Centrality 0.9672
Bentler & Bonett's (1980) Non-normed Index 0.9800
Bentler & Bonett's (1980) NFI 0.9653
James, Mulaik, & Brett (1982) Parsimonious NFI 0.6436
Z-Test of Wilson & Hilferty (1931) 1.8373
Bollen (1986) Normed Index Rho1 0.9480
Bollen (1988) Non-normed Index Delta2 0.9868
Hoelter's (1983) Critical N 204

Output 25.3.3 Estimation Results

Manifest Variable Equations with Estimates

Obs1 = 0.5151 * F1 + 1.0000   E1
Std Err   0.0629   X1        
t Value   8.1868            
Obs2 = 0.5203 * F1 + 1.0000   E2
Std Err   0.0634   X2        
t Value   8.2090            
Obs3 = 0.4874 * F1 + 1.0000   E3
Std Err   0.0608   X3        
t Value   8.0151            
Obs4 = 0.5211 * F2 + 1.0000   E4
Std Err   0.0611   X4        
t Value   8.5342            
Obs5 = 0.4971 * F2 + 1.0000   E5
Std Err   0.0590   X5        
t Value   8.4213            
Obs6 = 0.4381 * F2 + 1.0000   E6
Std Err   0.0560   X6        
t Value   7.8283            
Obs7 = 0.4524 * F3 + 1.0000   E7
Std Err   0.0660   X7        
t Value   6.8584            
Obs8 = 0.4173 * F3 + 1.0000   E8
Std Err   0.0622   X8        
t Value   6.7135            
Obs9 = 0.4076 * F3 + 1.0000   E9
Std Err   0.0613   X9        
t Value   6.6484            


Latent Variable Equations with Estimates

F1 = 1.4438 * F4 + 1.0000   E10
Std Err   0.2565   X10        
t Value   5.6282            
F2 = 1.2538 * F4 + 1.0000   E11
Std Err   0.2114   X11        
t Value   5.9320            
F3 = 1.4065 * F4 + 1.0000   E12
Std Err   0.2689   X12        
t Value   5.2307            

Variances of Exogenous Variables
Variable Parameter Estimate Standard
Error
t Value
F4   1.00000    
E1 U11 0.18150 0.02848 6.37
E2 U12 0.16493 0.02777 5.94
E3 U13 0.26713 0.03336 8.01
E4 U14 0.30150 0.05102 5.91
E5 U15 0.36450 0.05264 6.93
E6 U16 0.50642 0.05963 8.49
E7 U17 0.39032 0.05934 6.58
E8 U18 0.48138 0.06225 7.73
E9 U19 0.50509 0.06333 7.98
E10   1.00000    
E11   1.00000    
E12   1.00000    

Output 25.3.4 Standardized and Supplementary Results

Manifest Variable Equations with Standardized Estimates

Obs1 = 0.9047 * F1 + 0.4260   E1
        X1        
Obs2 = 0.9138 * F1 + 0.4061   E2
        X2        
Obs3 = 0.8561 * F1 + 0.5168   E3
        X3        
Obs4 = 0.8358 * F2 + 0.5491   E4
        X4        
Obs5 = 0.7972 * F2 + 0.6037   E5
        X5        
Obs6 = 0.7026 * F2 + 0.7116   E6
        X6        
Obs7 = 0.7808 * F3 + 0.6248   E7
        X7        
Obs8 = 0.7202 * F3 + 0.6938   E8
        X8        
Obs9 = 0.7035 * F3 + 0.7107   E9
        X9        


Latent Variable Equations with Standardized Estimates

F1 = 0.8221 * F4 + 0.5694   E10
        X10        
F2 = 0.7818 * F4 + 0.6235   E11
        X11        
F3 = 0.8150 * F4 + 0.5794   E12
        X12        

Squared Multiple Correlations
  Variable Error Variance Total Variance R-Square
1 Obs1 0.18150 1.00000 0.8185
2 Obs2 0.16493 1.00000 0.8351
3 Obs3 0.26713 1.00000 0.7329
4 Obs4 0.30150 1.00000 0.6985
5 Obs5 0.36450 1.00000 0.6355
6 Obs6 0.50642 1.00000 0.4936
7 Obs7 0.39032 1.00000 0.6097
8 Obs8 0.48138 1.00000 0.5186
9 Obs9 0.50509 1.00000 0.4949
10 F1 1.00000 3.08452 0.6758
11 F2 1.00000 2.57213 0.6112
12 F3 1.00000 2.97832 0.6642

To compute McDonald’s unidentified model, you would have to change the STD and BOUNDS statements to include three more parameters:

   std
      F4      = 1.,
      E1-E9   = U11-U19,
      E10-E12 = U21-U23;
   bounds
      0. <= U11-U19,
      0. <= U21-U23;

The unidentified model is indicated in the output by an analysis of the linear dependencies in the approximate Hessian matrix (not shown). Because the information matrix is singular, standard errors are computed based on a Moore-Penrose inverse. The results computed by PROC CALIS differ from those reported by McDonald (1985). In the case of an unidentified model, the parameter estimates are not unique.

To specify the identified model by using the COSAN model statement, you can use the following statements:

   proc calis data=Thurst method=max edf=212 pestim se;                        
      cosan F1(3) * F2(1) * P(1,Ide) + F1(3) * U2(3,Ide) + U1(9,Dia);            
      matrix F1                                                                  
             [ ,1] = X1-X3,                                                      
             [ ,2] = 3 * 0. X4-X6,                                               
             [ ,3] = 6 * 0. X7-X9;                                               
      matrix F2                                                                  
             [ ,1] = X10-X12;                                                    
      matrix U1                                                                  
             [1,1] = U11-U19;                                                    
      bounds                                                                     
             0. <= U11-U19;                                                      
   run;  

Because PROC CALIS cannot compute initial estimates for a model specified by the general COSAN statement, this analysis might require more iterations than one that uses the LINEQS statement, depending on the precision of the processor.

Previous Page | Next Page | Top of Page