Nonlinear constraints with threshold ...
Message/Author
 Michael Giordano posted on Friday, September 02, 2016 - 10:16 am
I am currently fitting moderated nonlinear factor analysis models to assess measurement invariance of categorical indicators. I have one latent factor with 10 categorical indicators. I am allowing the mean and variance of DEP to vary by a categorical covariate (we can use gender as an example). I am having trouble assessing measurement invariance of indicator thresholds. Currently, I am able to allow the indicator intercepts to vary as a function of the covariate with the following statement:

Item_01 ON gender

However, given ordinal indicators I would prefer to assess measurement invariance of the indicator thresholds instead of the indicator intercepts. I tried:

[item_01\$1] ON gender (this is only one of the thresholds, and I would like to allow all thresholds to vary)

But the program does not appear to recognize the threshold as a parameter which can be specified along with an ON statement. Is it possible to add non-linear constraints such as this, to the item thresholds in the model?

One solution we found was to use a multiple group setup, allowing thresholds to vary across groups. However, if it were possible we would prefer to use the moderated non-linear factor analysis framework as opposed to moving into the multiple group framework.
 Bengt O. Muthen posted on Friday, September 02, 2016 - 10:33 am
Apart from the 2-group approach, I think you can use the Constraint=gender option where you can use Model Constraint to model any parameter as a function of an observed variable, such as

tau2 = a+b2*gender;

using two new (NEW) parameters a and b2.

One such example is UG ex5.23 where a correlation is moderated by an observed variable.
 Michael Giordano posted on Sunday, September 04, 2016 - 3:56 pm
Hmm, thank you for the quick reply!

I have added gender to the constraint statement:
constraint = gender;

I labeled the threshold parameter
[item_01\$1] (thresh);

Finally, I added the model constraint, defining new parameters and specifying the threshold as a function of new paramters and the observed gender variable.
Model Constraint:
NEW (a b2);
thresh = a + b2*gender;

*** FATAL ERROR
THIS MODEL IS NOT AVAILABLE.

Am I missing something in my code? Or is there something about the thresholds that is no allowing those to be constrained? I have other constraints on the factor loading and latent variable variance.
 Linda K. Muthen posted on Sunday, September 04, 2016 - 8:15 pm