Chapter Contents Previous Next
 The CALIS Procedure

McDonald (1980) uses the same data set to compute a factor analysis with ordinally constrained factor loadings. The results of the linearly constrained factor analysis show that the loadings of the two factors are ordered as 2, 1, 3, 4, 6, 5. McDonald (1980) then tests the hypothesis that the factor loadings are all nonnegative and can be ordered in the following manner:

This example is recomputed by PROC CALIS to illustrate a further application of the COSAN model statement combined with program statements. The same identification problem as in Example 19.4 occurs here. The following model specification describes an unidentified model:

   proc calis data=Kinzer method=max outram=ram tech=nr nobs=326;
Title2 "Ordinally Related Factor Analysis, (Mcdonald,1980)";
Title3 "Identification Problem";
Cosan F(8,Gen) * I(8,Ide);
MATRIX F
[,1]  = x1-x6,
[,2]  = x7-x12,
[1,3] = x13-x18;
PARAMETERS t1-t10=1.;
x2  = x1  + t1  * t1;
x3  = x2  + t2  * t2;
x4  = x3  + t3  * t3;
x5  = x4  + t4  * t4;
x6  = x5  + t5  * t5;
x11 = x12 + t6  * t6;
x10 = x11 + t7  * t7;
x9  = x10 + t8  * t8;
x8  = x9  + t9  * t9;
x7  = x8  + t10 * t10;
Bounds x13-x18 >= 0.;
Vnames F Fact1 Fact2 Uvar1-Uvar6;
run;


You can specify the same model with the LINCON statement:

   proc calis data=Kinzer method=max tech=lm edf=325;
Title3 "Identified Problem 2";
cosan f(8,gen)*I(8,ide);
matrix F
[,1]  = x1-x6,
[,2]  = x7-x12,
[1,3] = x13-x18;
lincon  x1  <= x2,
x2  <= x3,
x3  <= x4,
x4  <= x5,
x5  <= x6,
x7  >= x8,
x8  >= x9,
x9  >= x10,
x10 >= x11,
x11 >= x12;
Bounds x13-x18 >= 0.;
Vnames F Fact1 Fact2 Uvar1-Uvar6;
run;


To have an identified model, the loading, b11 (x1), is fixed at 0. The information in the OUTRAM= data set (the data set ram), produced by the unidentified model, can be used to specify the identified model. However, because x1 is now a fixed constant in the identified model, it should not have a parameter name in the new analysis. Thus, the data set ram is modified as follows:

   data ram2(type=ram); set ram;
if _name_ = 'x1' then do;
_name_ = ' '; _estim_ = 0.;
end;
run;


The data set ram2 is now an OUTRAM= data set in which x1 is no longer a parameter. PROC CALIS reads the information (that is, the set of parameters and the model specification) in the data set ram2 for the identified model. As displayed in the following code, you can use the PARMS statement to specify the desired ordinal relationships between the parameters.


proc calis data=Kinzer method=max inram=ram2 tech=nr nobs=326;
title2 "Ordinally Related Factor Analysis, (Mcdonald,1980)";
title3 "Identified Model with X1=0";
parms t1-t10= 10 * 1.;
x2  =     + t1  * t1;
x3  = x2  + t2  * t2;
x4  = x3  + t3  * t3;
x5  = x4  + t4  * t4;
x6  = x5  + t5  * t5;
x11 = x12 + t6  * t6;
x10 = x11 + t7  * t7;
x9  = x10 + t8  * t8;
x8  = x9  + t9  * t9;
x7  = x8  + t10 * t10;
bounds x13-x18 >= 0.;
run;


Selected output for the identified model is displayed in Output 19.5.1.

Output 19.5.1: Factor Analysis with Ordinal Constraints

 Data Matrix of Kinzer & Kinzer, see GUTTMAN (1957) Ordinally Related Factor Analysis, (Mcdonald,1980) Identified Model with X1=0

 The CALIS Procedure Covariance Structure Analysis: Maximum Likelihood Estimation

 Parameter Estimates 17 Functions (Observations) 21 Lower Bounds 6 Upper Bounds 0

 Optimization Start Active Constraints 0 Objective Function 5.2552270182 Max Abs Gradient Element 0.8821788922

 Iteration Restarts FunctionCalls ActiveConstraints ObjectiveFunction ObjectiveFunctionChange Max AbsGradientElement Ridge RatioBetweenActualandPredictedChange 1 0 2 0 3.14901 2.1062 1.0712 0 2.226 2 0 3 0 1.42725 1.7218 1.0902 0 2.064 3 0 4 0 0.41661 1.0106 0.7472 0 1.731 4 0 5 0 0.09260 0.3240 0.3365 0 1.314 5 0 6 0 0.09186 0.000731 0.3880 0 0.0123 6 0 8 0 0.04570 0.0462 0.2870 0.0313 0.797 7 0 10 0 0.03269 0.0130 0.0909 0.0031 0.739 8 0 16 0 0.02771 0.00498 0.0890 0.0800 0.682 9 0 17 0 0.02602 0.00168 0.0174 0.0400 0.776 10 0 19 0 0.02570 0.000323 0.0141 0.0800 0.630 11 0 21 0 0.02560 0.000103 0.00179 0.160 1.170 12 0 23 0 0.02559 7.587E-6 0.000670 0.160 1.423 13 0 24 0 0.02559 2.993E-6 0.000402 0.0400 1.010 14 0 27 0 0.02559 1.013E-6 0.000206 0.160 1.388 15 0 28 0 0.02559 1.889E-7 0.000202 0.0400 0.530 16 0 30 0 0.02559 1.803E-7 0.000097 0.0800 0.630 17 0 32 0 0.02559 4.845E-8 0.000035 0.160 1.340 18 0 33 0 0.02559 1.837E-9 0.000049 0.0400 0.125 19 0 35 0 0.02559 9.39E-9 0.000024 0.0800 0.579 20 0 37 0 0.02559 2.558E-9 6.176E-6 0.160 1.305

 Optimization Results Iterations 20 Function Calls 38 Jacobian Calls 21 Active Constraints 0 Objective Function 0.0255871615 Max Abs Gradient Element 6.1764582E-6 Ridge 0.04 Actual Over Pred Change 1.3054374955

 ABSGCONV convergence criterion satisfied.

 Data Matrix of Kinzer & Kinzer, see GUTTMAN (1957) Ordinally Related Factor Analysis, (Mcdonald,1980) Identified Model with X1=0

 The CALIS Procedure Covariance Structure Analysis: Maximum Likelihood Estimation

 Fit Function 0.0256 Goodness of Fit Index (GFI) 0.9916 GFI Adjusted for Degrees of Freedom (AGFI) 0.9557 Root Mean Square Residual (RMR) 0.0180 Parsimonious GFI (Mulaik, 1989) 0.2644 Chi-Square 8.3158 Chi-Square DF 4 Pr > Chi-Square 0.0807 Independence Model Chi-Square 682.87 Independence Model Chi-Square DF 15 RMSEA Estimate 0.0576 RMSEA 90% Lower Confidence Limit . RMSEA 90% Upper Confidence Limit 0.1133 ECVI Estimate 0.1325 ECVI 90% Lower Confidence Limit . ECVI 90% Upper Confidence Limit 0.1711 Probability of Close Fit 0.3399 Bentler's Comparative Fit Index 0.9935 Normal Theory Reweighted LS Chi-Square 8.2901 Akaike's Information Criterion 0.3158 Bozdogan's (1987) CAIC -18.8318 Schwarz's Bayesian Criterion -14.8318 McDonald's (1989) Centrality 0.9934 Bentler & Bonett's (1980) Non-normed Index 0.9758 Bentler & Bonett's (1980) NFI 0.9878 James, Mulaik, & Brett (1982) Parsimonious NFI 0.2634 Z-Test of Wilson & Hilferty (1931) 1.4079 Bollen (1986) Normed Index Rho1 0.9543 Bollen (1988) Non-normed Index Delta2 0.9936 Hoelter's (1983) Critical N 372

 Data Matrix of Kinzer & Kinzer, see GUTTMAN (1957) Ordinally Related Factor Analysis, (Mcdonald,1980) Identified Model with X1=0

 The CALIS Procedure Covariance Structure Analysis: Maximum Likelihood Estimation

 Estimated Parameter Matrix F[6:8]Standard Errors and t ValuesGeneral Matrix Fact1 Fact2 Uvar1 Uvar2 Uvar3 Uvar4 Uvar5 Uvar6 Obs1 0 0 0 0.7101 0.0435 16.3317 0.7131 0.0404 17.6427 [x13] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Obs2 0.0261 0.0875 0.2977 0.7101 0.0435 16.3317 0 0 0 0.6950 0.0391 17.7571 [x14] 0 0 0 0 0 0 0 0 0 0 0 0 Obs3 0.2382 0.0851 2.7998 0.6827 0.0604 11.3110 0 0 0 0 0 0 0.6907 0.0338 20.4239 [x15] 0 0 0 0 0 0 0 0 0 Obs4 0.3252 0.0823 3.9504 0.6580 0.0621 10.5950 0 0 0 0 0 0 0 0 0 0.6790 0.0331 20.5361 [x16] 0 0 0 0 0 0 Obs5 0.5395 0.0901 5.9887 0.5528 0.0705 7.8359 0 0 0 0 0 0 0 0 0 0 0 0 0.6249 0.0534 11.7052 [x17] 0 0 0 Obs6 0.5395 0.0918 5.8776 0.4834 0.0726 6.6560 [x12] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.7005 0.0524 13.3749 [x18]

 Data Matrix of Kinzer & Kinzer, see GUTTMAN (1957) Ordinally Related Factor Analysis, (Mcdonald,1980) Identified Model with X1=0

 The CALIS Procedure Covariance Structure Analysis: Maximum Likelihood Estimation

 Additional PARMS and Dependent Parameters The Number of Dependent Parametersis 10 Parameter Estimate StandardError t Value t1 0.16143 0.27111 0.60 t2 0.46060 0.09289 4.96 t3 0.29496 0.13702 2.15 t4 0.46297 0.10756 4.30 t5 0.0000522 1311 0.00 t6 0.26347 0.12203 2.16 t7 0.32430 0.09965 3.25 t8 0.15721 0.21134 0.74 t9 0.16543 0.20537 0.81 t10 -4.2528E-7 0.47736 -0.00 x7 0.71007 0.04348 16.33 x2 0.02606 0.08753 0.30 x8 0.71007 0.04348 16.33 x3 0.23821 0.08508 2.80 x9 0.68270 0.06036 11.31 x4 0.32521 0.08232 3.95 x10 0.65799 0.06210 10.60 x5 0.53955 0.09009 5.99 x11 0.55282 0.07055 7.84 x6 0.53955 0.09180 5.88

By fixing the loading b11 (x1) to constant 0, you obtain on df = 4 (p < .09). McDonald reports the same value, but on df=3, and thus, he obtains a smaller p-value. An analysis without the fixed loading shows typical signs of an unidentified problem: after more iterations it leads to a parameter set with a value of 8.174 on df=3. A singular Hessian matrix occurs.

The singular Hessian matrix of the unidentified problem slows down the convergence rate of the Levenberg-Marquardt algorithm considerably. Compared to the unidentified problem with 30 iterations, the identified problem needs only 20 iterations. Note that the number of iterations may depend on the precision of the processor.

The same model can also be specified using the LINCON statement for linear constraints:

   proc calis data=Kinzer method=max tech=lm edf=325;
Title3 "Identified Model 2";
cosan f(8,gen)*I(8,ide);
matrix f
[,1]  = 0. x2-x6,
[,2]  = x7-x12,
[1,3] = x13-x18;

lincon  x2  <= x3,
x3  <= x4,
x4  <= x5,
x5  <= x6,
x7  >= x8,
x8  >= x9,
x9  >= x10,
x10 >= x11,
x11 >= x12;
bounds x2 x13-x18 >= 0.;
run;


 Chapter Contents Previous Next Top