Hi everyone,
I am assessing moral violation ratings of adolescents. I am wondering how to interpret MIMIC models where I regress the factor onto sex, age, and political ideology. For sex and political ideology, I am using dummy codes. For age, I am not.
My data is coming from 11 different schools, so I am regressing the factor on 10 dummy coded school variables to control for school. Is it accurate to say I am controlling for these variables when I regress the factor on them?
Let's take the "loyalty" factor as an example. For this, I also regressed the political ideology identifier on two indicators because they involve a "US General" and an "American" as the protagonist, so I hypothesized that these might exhibit metric non-invariance for liberal vs. conservative students (they are also the items that show up has having correlated error variance in the modification indices).
Here is the syntax for the loyalty factor analysis:
loya <- '
loya =~ Q1_6 + Q2_6 + Q3_6 + Q4_6 + Q5_7 + Q6_7
loya ~ schooldummy_1
loya ~ schooldummy_10
loya ~ schooldummy_3
loya ~ schooldummy_4
loya ~ schooldummy_5
loya ~ schooldummy_6
loya ~ schooldummy_7
loya ~ schooldummy_8
loya ~ schooldummy_9
loya ~ schooldummy_11
loya ~ sex_1
loya ~ Q11
loya ~ consrep
loya ~ libdem
Q2_6 ~ consrep
Q6_7 ~ consrep
Q2_6 ~ libdem
Q6_7 ~ libdem
'
loya1 <- cfa(loya, data = cfs,std.lv = TRUE, mimic = "mplus", estimator = "MLR")
summary(loya1, fit.measures = TRUE, rsquare=TRUE, standardized = TRUE)
modificationindices(loya1, standardized = TRUE,sort. = TRUE)
When I run this code, I get the output provided below.
Here are my questions regarding interpreting this:
1. I can say I am controlling for school, sex, age, and political ideology by including these regressions, correct?
2. There is a significant (p<.05) difference in factor means for schools 10, 4, 6, 8, and 9. Is that correct?
3. There is a significant difference in factor means for age, sex, and being politically conservative (consrep) but not liberal (libdem), correct?
4. There is a significant direct effect of being conservative (consrep) on the Q2_6 and Q6_7 indicators, but only a significant direct effect on the Q6_7 indicator for liberals, correct?
5. The direct effects on the indicators (Q2_6 and Q6_7) are evidence of metric non-invariance?
Any additional thoughts/guidance anyone has is highly appreciated. I am using Brown's book, but would love to hear of additional resources.
Thanks so much,
Brandon
> summary(loya1, fit.measures = TRUE, rsquare=TRUE, standardized = TRUE)
lavaan 0.6-5 ended normally after 88 iterations
Estimator ML
Optimization method NLMINB
Number of free parameters 36
Used Total
Number of observations 1730 1733
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 264.847 264.319
Degrees of freedom 75 75
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.002
for the Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 2696.446 2629.089
Degrees of freedom 99 99
P-value 0.000 0.000
Scaling correction factor 1.026
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.927 0.925
Tucker-Lewis Index (TLI) 0.904 0.901
Robust Comparative Fit Index (CFI) 0.927
Robust Tucker-Lewis Index (TLI) 0.904
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -15179.969 -15179.969
Scaling correction factor 1.004
for the MLR correction
Loglikelihood unrestricted model (H1) -15047.546 -15047.546
Scaling correction factor 1.003
for the MLR correction
Akaike (AIC) 30431.939 30431.939
Bayesian (BIC) 30628.350 30628.350
Sample-size adjusted Bayesian (BIC) 30513.982 30513.982
Root Mean Square Error of Approximation:
RMSEA 0.038 0.038
90 Percent confidence interval - lower 0.033 0.033
90 Percent confidence interval - upper 0.043 0.043
P-value RMSEA <= 0.05 1.000 1.000
Robust RMSEA 0.038
90 Percent confidence interval - lower 0.033
90 Percent confidence interval - upper 0.043
Standardized Root Mean Square Residual:
SRMR 0.022 0.022
Parameter Estimates:
Information Observed
Observed information based on Hessian
Standard errors Robust.huber.white
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
loya =~
Q1_6 0.524 0.033 15.679 0.000 0.549 0.411
Q2_6 0.670 0.030 22.058 0.000 0.702 0.559
Q3_6 0.712 0.026 26.911 0.000 0.746 0.643
Q4_6 0.797 0.024 33.854 0.000 0.836 0.750
Q5_7 0.669 0.023 28.521 0.000 0.701 0.673
Q6_7 0.605 0.028 21.625 0.000 0.634 0.549
Regressions:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
loya ~
schooldummy_1 0.290 0.208 1.394 0.163 0.277 0.041
schooldummy_10 -0.189 0.090 -2.103 0.035 -0.180 -0.066
schooldummy_3 -0.010 0.137 -0.070 0.944 -0.009 -0.002
schooldummy_4 0.381 0.136 2.806 0.005 0.364 0.086
schooldummy_5 0.210 0.134 1.564 0.118 0.201 0.058
schooldummy_6 0.579 0.144 4.031 0.000 0.552 0.126
schooldummy_7 -0.018 0.154 -0.115 0.908 -0.017 -0.003
schooldummy_8 0.853 0.213 4.000 0.000 0.814 0.106
schooldummy_9 -0.256 0.099 -2.581 0.010 -0.244 -0.084
schooldummy_11 -0.136 0.146 -0.931 0.352 -0.130 -0.048
sex_1 -0.270 0.056 -4.793 0.000 -0.258 -0.128
Q11 -0.064 0.025 -2.540 0.011 -0.061 -0.132
consrep 0.130 0.066 1.983 0.047 0.124 0.058
libdem -0.159 0.090 -1.773 0.076 -0.152 -0.048
Q2_6 ~
consrep 0.228 0.059 3.856 0.000 0.228 0.085
Q6_7 ~
consrep 0.140 0.053 2.619 0.009 0.140 0.056
Q2_6 ~
libdem -0.078 0.087 -0.892 0.372 -0.078 -0.020
Q6_7 ~
libdem -0.260 0.086 -3.019 0.003 -0.260 -0.072
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.Q1_6 2.856 0.170 16.793 0.000 2.856 2.135
.Q2_6 3.357 0.217 15.498 0.000 3.357 2.671
.Q3_6 3.315 0.225 14.727 0.000 3.315 2.856
.Q4_6 3.797 0.252 15.048 0.000 3.797 3.408
.Q5_7 4.145 0.214 19.390 0.000 4.145 3.976
.Q6_7 4.233 0.199 21.257 0.000 4.233 3.662
.loya 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.Q1_6 1.488 0.045 32.743 0.000 1.488 0.831
.Q2_6 1.065 0.043 24.786 0.000 1.065 0.674
.Q3_6 0.791 0.036 21.723 0.000 0.791 0.587
.Q4_6 0.543 0.032 17.150 0.000 0.543 0.437
.Q5_7 0.595 0.030 19.622 0.000 0.595 0.547
.Q6_7 0.910 0.039 23.526 0.000 0.910 0.681
.loya 1.000 0.910 0.910
R-Square:
Estimate
Q1_6 0.169
Q2_6 0.326
Q3_6 0.413
Q4_6 0.563
Q5_7 0.453
Q6_7 0.319
loya 0.090
> modificationindices(loya1, standardized = TRUE,sort. = TRUE)
lhs op rhs mi epc sepc.lv sepc.all sepc.nox
188 Q6_7 ~ Q2_6 29.353 0.140 0.140 0.152 0.152
166 Q2_6 ~~ Q6_7 29.352 0.149 0.149 0.152 0.152
175 Q2_6 ~ Q6_7 29.351 0.164 0.164 0.151 0.151
200 Q6_7 ~ Q11 24.255 -0.059 -0.059 -0.111 -0.051
395 consrep ~ Q6_7 23.959 0.132 0.132 0.327 0.327
160 Q1_6 ~~ Q4_6 15.389 0.110 0.110 0.123 0.123
164 Q2_6 ~~ Q4_6 13.282 -0.096 -0.096 -0.127 -0.127
162 Q1_6 ~~ Q6_7 13.280 -0.112 -0.112 -0.097 -0.097
163 Q2_6 ~~ Q3_6 12.147 0.095 0.095 0.104 0.104
168 Q3_6 ~~ Q5_7 12.138 -0.080 -0.080 -0.116 -0.116
172 Q5_7 ~~ Q6_7 10.575 0.073 0.073 0.099 0.099
171 Q4_6 ~~ Q6_7 9.868 -0.076 -0.076 -0.108 -0.108
189 Q6_7 ~ schooldummy_1 9.267 -0.500 -0.500 -0.064 -0.433
...
>