LIBNAME sas 'c:\temp\cfa'; /* Two Factor Model A */ PROC CALIS DATA=sas.values METHOD=ML PALL; VAR privtown govtresp compete homosex abortion euthanas; LINEQS privtown = 1.0 f1 + e1, govtresp = lam2 f1 + e2, compete = lam3 f1 + e3, homosex = 1.0 f2 + e4, abortion = lam5 f2 + e5, euthanas = lam6 f2 + e6; STD f1-f2 = ph1-ph2, e1-e6 = td1-td6; COV f1-f2 = ph3; RUN; /* Two Factor Model B */ ODS HTML; PROC CALIS DATA=sas.values METHOD=ML PALL; VAR privtown govtresp compete homosex abortion euthanas; LINEQS privtown = 1.0 f1 + e1, govtresp = lambda2 f1 + lambda7 f2 + e2, compete = lambda3 f1 + e3, homosex = 1.0 f2 + e4, abortion = lambda5 f2 + e5, euthanas = lambda6 f2 + e6; STD f1-f2 = phi1-phi2, e1-e6 = theta1-theta6; COV f1-f2 = phi3; RUN; ODS HTML CLOSE; /* Two Factor Model with Categorical Observed Variables */ ODS HTML; PROC CALIS DATA=sas.values_ord METHOD=WLS PALL; VAR privtown govtresp compete homosex abortion euthanas; LINEQS privtown = 1.0 f1 + e1, govtresp = lambda2 f1 + lambda7 f2 + e2, compete = lambda3 f1 + e3, homosex = 1.0 f2 + e4, abortion = lambda5 f2 + e5, euthanas = lambda6 f2 + e6; STD f1-f2 = phi1-phi2, e1-e6 = theta1-theta6; COV f1-f2 = phi3; RUN; ODS HTML CLOSE;