How to model interaction between ordinal predictors

I have an ordinal response variable and a bunch of predictors, some of them are ordinal.
What is the best way to model the interaction between two ordinal variables, taking into account the monotonic effect?
I would use brms because the monotonic effect is already built-in thanks to the mo() function

2 Likes

If I understand it correctly, what you want is a matrix of coefficients that increase in all rows and columns. That actually sounds like a quite complex structure and I am not sure how I would go about implenting it. I would expect brms to not support this directly, but I am on mobile and can’t check. I think something like mo(a) + mo(b) + a:mo(b) should work and is the closest you can get easily to the desired structure.

Tagging @paul.buerkner to check my reasoning…

1 Like

I a is also monotonic, we should probably use mo(a) + mo(b) + mo(a):mo(b) or equivalenlty just mo(a)*mo(b).

1 Like

When interacting an ordered or unordered variable with an ordered predictor does brms carry the same cumulative Dirichlet weights for the ordered predictor over to all interaction terms involving the predictor? In other words since for a main effect the modeling procedure is in effect solving for how the ordered categories should be numerically scaled, is this scaling held constant for the predictor in all its model manifestations?

By default no. But you can use the id argument of mo() to achieve just that.

1 Like