Thank you for your response, Prof. Rosseel.
Following up on the issue of obtaining NA values for robust fit indices when using measEq.syntax (versus using the default group.equal argument), I tried writing the syntax manually (not the syntax provided by measEq.syntax, and I again obtained NA values, similar to what happens with measEq.syntax.
You asked whether the NA values also occur when using ID.fac = "
std.lv". Initially, I used the default approach with the marker method when specifying constraints manually using the group.equal argument, while I used ID.fac = "
std.lv" with the Wu and Estabrook (2016) approach via measEq.syntax. I have now rerun the model using the default approach with
std.lv = TRUE, and I obtained the same results. Although I am using lavaan.mi with multiply imputed data, it seems that whenever syntax is user-defined, either manually or via measEq.syntax, the model behaves differently. In many cases, the model fails to converge, gives warnings, or produces NA values for robust fit indices from my expericne. I am not sure, but there may be a bug (see below for the syntax and corresponding results).
For example, when comparing the default method and measEq.syntax using the syntax below, the default method produced robust fit indices, whereas measEq.syntax did not. As you can see, the model fit indices (i.e., both standard and scaled) were exactly the same. I also examined all factor loadings, thresholds, intercepts, variances, etc., and they were identical. This contradicts your suggestion that the most common reason for obtaining NA for robust fit indices is a non-positive definite covariance matrix. If that were the case, we should have seen NA values for robust fit indices even when using the default method. NA for robust fit indices is a very common problem. My results suggest that this issue might be due to writing the syntax (i.e., manually specifying the model or using measEq.syntax) versus using the default methods in lavaan, rather than being caused by model mis-specification.




I also have an additional question regarding this topic, and I would greatly appreciate your insight. I plan to conduct multiple-group SEM measurement invariance testing and then compare regression paths (direct, indirect, and total effects) across groups. In this context, I am unsure whether the marker method is compatible with Wu and Estabrook (2016)? and which identification method (marker vs.
std.lv) is preferable for categorical indicators for thi purpose. When I used the marker method with Wu and Estabrook (2016) through measEq.syntax, the model did not converge. However, when I used the same model with ID.fac = "
std.lv", it converged without any issues (with NA for robust fit indices), whereas when I used the same model with the marker method with the default approach, the model converged without any issue (with robust fit indices).
Best wishes,
A