Specify random effects correlations you want to estimate


Hello. Is it possible to specify exact correlations to be estimated in the random effects variance-covariance matrix?

Let’s say that y is binomial response variable, x continuous predictor, and Cond is a binomial predictor(valued A or B).

This code

 brms (y~x*Cond + (x*Cond | subject), data = da, family = "bernoulli", verbose = T, chains = 4, iter = 2000, warmup = 200, cores = 4, prior =c(set_prior ("normal (0, 8)"))

estimates all correlations between the effects that is
Intercept - X
Intercept - CondB
Intercept - X:CondB
X - CondB
X - X:CondB
CondB - X:CondB

I would like to estimate only
X - X:CondB

to make the model simpler.

IS that possible?


I’d encourage you to put this in the “interfaces” category and mark it as “BRMS.”


As Jeremy said, please used the interfaces - brms category or otherwise I will likely overlook it (I just changed the category manually this time).

You can only estimate certain correlations, but not others, if the correlations you want to estimated form a correlation sub-matrix, that is a subset of the rows and columns of the original correlation matrix, where rows and columns have the same indices.

Suppose you have two continuous predictors x1 and x2, and you wanted to estimate the correlations only between the intercept and x1, than you could go for

y ~ x1 + x2 + (x1 | subject) + (0 + x2 | subject)

In your case, the correlations you want to estimate don’t form a correlation sub-matrix, so I don’t see this is possible.