How to calclaute robust versions of model fit indices

51 views
Skip to first unread message

ahmad

unread,
Oct 31, 2025, 12:58:16 PMOct 31
to lavaan
Hi,

As you know, lavaan sometimes does not provide robust versions of certain model fit indices, including CFI and RMSEA. I was wondering whether there is a method (manually) or a piece of software that can calculate robust versions of these indices from the scaled or standard versions when the WLSMV estimator is used.

Best wishes,
A

Yves Rosseel

unread,
Nov 6, 2025, 2:42:47 AMNov 6
to lav...@googlegroups.com
The main reason why the 'robust' CFI/RMSEA fit measures often result in
NA values when data is categorical, is because the matrix of
tetrachoric/polychoric correlations is often not positive definite. This
is not a problem for point estimation, but it is a problem for the
computation of those robust CFI/RMSEA fit measures.

You might try to 'smooth' the correlation matrix, and force it to be
positive definite before computing the fit measures. But small
experiments indicated that the distortion was too large, and therefore,
we did not include it in lavaan.

Of course you are free to experiment yourself. The code for the robust,
say, RSMEA can be found in the file lav_fit_rmsea.R on github. Look for
the function lav_fit_rmsea_lavobject(), which in turn calls the function
lav_fit_catml_dwls() to obtain the ingredients. It is the latter
function that 'refits' the model pretending the data is continuous and
requires the input covariance matrix to be positive definite.

Yves.

ahmad

unread,
Nov 7, 2025, 8:02:51 AMNov 7
to lavaan
Thank you, Yves. It was really informative and helpful.

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