Skip to content
Prev 19126 / 20628 Next

Does corSymm() require balanced data?

Dear Joe,

At the risk of revealing something that could be misused (because I agree with Thierry that you are pushing things by trying to fit this model with these data), you can get the model to converge by switching to a different optimizer (i.e., BFGS):

fit <- lme(opp ~ time * ccog, random = ~ 1 | id, correlation = corSymm(form = ~ 1 | id), data = dat, control = list(opt = "optim"))

Whether this converges to the global maximum I have not attempted to check.

Maybe this is still useful to know because it might allow you to make a more informed decision about the use of a simpler model. For example:

fit2 <- lme(opp ~ time*ccog, random = ~ 1 | id, correlation = corAR1(form = ~ time), data = dat, control=list(opt="optim"))
anova(fit, fit2)

shows that the corSymm() model does not fit significantly better than the AR1 model.

Best,
Wolfgang