Skip to content
Prev 3029 / 5632 Next

[R-meta] 3 candidate random structures

Hi Tim,

In your data, do the outcome numbers correspond to categories that are
comparable across studies? In other words, does outcome = 1 in study 1 mean
the same thing as outcome = 1 in study 2? Or, alternately, are they just ID
variables, with arbitrary labels that could be re-ordered within each study
without losing any information?

The reason I ask is that your first set of random effects (~ outcome |
study) would only make sense if the outcome variable corresponds to
categories that are comparable across studies.

To question about which specification is most appropriate for the data
structure, I'll comment below.

Specification A: list(~ outcome | study, ~ time |
interaction(study,outcome)), struct=c("HCS","HAR")

This specification includes correlated random effects for each
study-outcome, which have a common influence across groups and time-points.
It also includes auto-regressive random effects across time-points for each
study-outcome combination. Since gr does not appear in the random effects
ID terms, the assumption is that the auto-regressive random effects have a
common influence across groups within each study. That seems a bit
restrictive.

Specification B:   list(~ outcome | study, ~ time |
interaction(study,gr,outcome)), struct=c("HCS","HAR")

This specification includes correlated random effects for each
study-outcome, which have a common influence across groups and time-points.
It includes auto-regressive random effects across time-points for each
study-outcome -group combination. The structure of the auto-regressive
random effects is assumed to be common across study-outcome-group
combinations. That might be reasonable, but given that you're allowing the
study-level random effects to have a unique variance for each outcome, it
does lead one to wonder why the time-point random effects are treated as
homogeneous across outcomes.

Specification C:   list(~ outcome | interaction(study,gr), ~ time |
interaction(study,gr,outcome)), struct =c("HCS","HAR")

This specification includes correlated random effects for each
study-outcome-group, which have a common influence across time-points. It
includes auto-regressive random effects across time-points for each
study-outcome -group combination. The structure of the auto-regressive
random effects is assumed to be common across study-outcome-group
combinations. Relative to B, specification C seems less reasonable as a
starting point because it does not allow for study-level variation that is
common across groups.

Specification D:   list(~ outcome | study, ~ outcome |
interaction(study,gr), ~ outcome | interaction(study,gr,time)), struct
=c("HCS","HCS","HCS")

I've added this specification as a further hypothetical
alternative---hypothetical because it's not actually possible to fit it
with rma.mv(), due to the constraint that you can only have two sets of
random effects with a term on the left hand side of the bar. But
hypothetically, this might be another parameterization to consider. It
includes correlated random effects for each study-outcome, each
study-group-outcome, and each study-group-outcome-timepoint, capturing the
idea of a (multivariate) outcome, nested within time-points, nested within
groups, nested within studies. It might be simplified in various ways, such
as by using ~ 1 | instead of ~ outcome | at one or more levels.

In any case, as you noted in your query, ultimately these different
specifications should be investigated empirically.

Cheers,
James

On Wed, Jul 28, 2021 at 11:12 AM Timothy MacKenzie <fswfswt at gmail.com>
wrote: