Partial scalar invariance in a measurement model with ordinal indicators

41 views
Skip to first unread message

ahmad

unread,
Aug 20, 2025, 3:47:01 PMAug 20
to lavaan
Hi,

I am conducting a measurement invariance analysis for a joint model with two latent factors: one measured by continuous indicators and the other by ordinal indicators. Because the model includes ordinal indicators, I first established threshold + metric invariance together (since the thresholds-only model has 0 df compared to the configural model). However, I was not able to establish scalar invariance, so I attempted to test partial scalar invariance.

The results of lavTestScore(scalar.fit) suggest that the thresholds of one of the ordinal indicators may be contributing to the poor fit.

id lhs op rhs user block group free ustart exo label plabel start est se 12 12 kq329 | t1 1 1 1 12 NA 0 kq329.thr1 .p12. 0.48 0.501 0.021 212 212 kq329 | t1 1 5 5 163 NA 0 kq329.thr1 .p212. -0.90 0.501 0.021

My question is: Can I free that threshold across groups to achieve partial scalar invariance, even though thresholds were already constrained equal in the earlier step?

Thanks in advance for your help.
A

Terrence Jorgensen

unread,
Aug 22, 2025, 6:42:42 AMAug 22
to lavaan
The results of lavTestScore(scalar.fit) suggest that the thresholds of one of the ordinal indicators may be contributing to the poor fit.

Only because that is the constraint you tested.  This function is agnostic about the meaning of the parameters or the distinction between identification constraints and hypothesized/meaningful equality constraints.

Can I free that threshold across groups to achieve partial scalar invariance

With only 2 thresholds, there is no way to test threshold invariance; you can only assume it.  So it is impossible for the data to distinguish whether thresholds, latent locations, or latent scales differ.

I suggest you only use lavTestScore() to test which loading(s) might differ, since freeing an item's threshold(s) would no longer make it possible to compare the loadings (since they would represent effects on different scales).

Terrence D. Jorgensen    (he, him, his)

Assistant Professor, Methods and Statistics
Research Institute for Child Development and Education, the University of Amsterdam
http://www.uva.nl/profile/t.d.jorgensen


ahmad

unread,
Aug 22, 2025, 10:34:05 AMAug 22
to lavaan
Dear Dr. Jorgensen,

Thank you for your response.

I have a follow-up question: I meant after establishing metric invariance, when I want to test scalar invariance, can I free thresholds to achieve partial scalar invariance? If so, should I also free that indicator’s factor loadings?

Additionally, I am unclear about the assumption regarding thresholds: do I need to assume threshold invariance without constraining them, or should I actually constrain them, and simply assume they are equal across groups even if it is not directly testable?

Best wishes,
A
Reply all
Reply to author
Forward
0 new messages