Wondering how people are doing latent variable modelling when the observed variables are ordinal. In the blog I link below this paragraph, an example in brms is given, but the observed variables related to the underlying construct are simulated as continuous with rnorm(). In my field, it’s more likely that we measure such things with ordinal survey data.
Let’s say I have an underlying construct X that is well-established in the field. It’s at least very practically useful to consider this as something that really exists. We target this construct in a survey with three questions (q1, q2, and q3) that are answered with a 5-point ordinal rating scale. We then want to predict y with our latent variable.
Borrowing from the blog post I linked to, a way to do that in brms would be to set up the model in the following way. However, when I make it so that my ordinal variables are ordered factors, the model won’t run as it is expecting continuous variables.
# mi(x) tells brms that it is missing
bf1 <- bf(q1 ~ 0 + mi(X))
bf2 <- bf(q2 ~ 0 + mi(X))
bf3 <- bf(q3 ~ 0 + mi(X))
bf4 <- bf(X | mi() ~ 0)
bf5 <- bf(y ~ mi(X))
# Fitting the model
fit3 <- brm(bf1 + bf2 + bf3 + bf4 + bf5 + set_rescor(FALSE), data = d,
prior = c(prior(normal(1, 0.000001), coef = miX, resp = q1),
prior(normal(1, 1), coef = miX, resp = q2),
prior(normal(1, 1), coef = miX, resp = q3),
prior(normal(0, 1), coef = miX, resp = y)), ...)
The only issue I’m having here is that I can’t find resources on how to fit these types of models that properly account for the fact that q1, q2, and q3 are ordinal variables. It seems like people are often just treating ordinal variables as continuous variables, which is something I wouldn’t want to do. Any direction to materials or recommendations would be greatly appreciated!