Skip to content

priors for multivariate mixed model in MCMCglmm with random intercepts and slopes

1 message · Malcolm Fairbrother

#
Hi John,

This is not my substantive area of expertise at all, and I'm not completely
confident I can help. But, nobody else has responded, and I have fitted
some multivariate models with MCMCglmm. So, for what it's worth...

For starters, I'm not sure I understand the data. If you're saying each of
7 properties are observed on 38 fish each observed over the course of 124
months, where does 1021 come from? (38x124 is 4712...) Are you saying you
have repeated observations on fish over the course of 124 months, but for
each actual fish you have fewer observations than 124?

Next, two questions about your models:
Why do you allow the slope for Age to vary randomly across months?
And why model growth (so, say, % or absolute change in length) rather than
the property that is growing (length)? The latter would seem more
straightforward to me.

As regards the priors, if I understand you correctly, you've kept the same
prior specification (prior1) when fitting models (m3 and m4) with an
additional parameter at each higher level. So maybe try changing 7 to 8 at
those levels?

prior2  <- list(R=list(V=diag(7), nu=7), G=list(G1=list(V=diag(8), nu=8),
G2=list(V=diag(8), nu=8)))

Additionally, also for what it's worth, I've found parameter-expanded
priors to be more uninformative, and Jarrod has made them pretty easy to
use. So (assuming you want them to be uninformative) you might try:

prior2a  <- list(R=list(V=diag(7), nu=7.02), G=list(G1=list(V=diag(8),
nu=8.02, alpha.mu=rep(0,8), alpha.V=1000*diag(8)), G2=list(V=diag(8),
nu=8.02, alpha.mu=rep(0,8), alpha.V=1000*diag(8))))

Hope that helps...?

Don't feel bad. You're far from the first person to write to this list with
questions about priors for MCMCglmm!

Cheers,
Malcolm