[R-meta] Question about longitudinal that report multiple outcomes

Jack Solomon kj@j@o|omon @end|ng |rom gm@||@com
Thu Apr 29 04:08:22 CEST 2021


Dear Wolfgang,

Thank you so much for your response.

Wolfgang: I can't quite parse your question. We are saying that the two 1.1
effects are dependent and that the two 1.2 effects are dependent and that
the two 2.1 effects are dependent. But the two 1.1 effects are not
correlated with any of the other effects and so on. If this is what you
meant, then yes.

++++ My question is that shouldn't 1.1, and 1.1 be correlated with 1.2 and
1.2 as they belong to "study 1"? Is n't the goal to let the effect sizes
from each study to be correlated with each other due to multiple outcomes
and multiple time points, and let the effect sizes from different studies
to be uncorrelated with each other due to being from independent studies?

++++ I imagine "~time | interaction(study,outcome)" is the same as "~time |
study/outcome", correct? If yes, why not  jus "random = ~time |
study/outcome/esID", and instead creating "random = list(~ outcome | study,
~ time | study/outcome)"?


Thank you for your knowledge,
Jack

On Wed, Apr 28, 2021 at 5:09 AM Viechtbauer, Wolfgang (SP) <
wolfgang.viechtbauer using maastrichtuniversity.nl> wrote:

> Dear Jack,
>
> Please see below for my responses.
>
> Best,
> Wolfgang
>
> >-----Original Message-----
> >From: Jack Solomon [mailto:kj.jsolomon using gmail.com]
> >Sent: Monday, 26 April, 2021 23:50
> >To: Viechtbauer, Wolfgang (SP)
> >Cc: r-sig-meta-analysis using r-project.org
> >Subject: Re: Question about longitudinal that report multiple outcomes
> >
> >Dear Wolfgang,
> >
> >Thank you very much for the kind response. I want to follow-up on two
> things.
> >
> >++++++First, I compared the syntax you suggest in your above response to
> the ones
> >you discuss here: (
> https://stat.ethz.ch/pipermail/r-sig-meta-analysis/2018-
> >July/000896.html), but I was not able to grasp the reasoning behind the
> syntax you
> >suggest in your above response?
> >
> >Per `?rma.mv`,  "~time | interaction(study,outcome)" would mean that
> effect
> >sizes with different values of "interaction(study,outcome)" are assumed
> to be
> >independent, while effects with the same values of the
> >"interaction(study,outcome)" share correlated random effects
> corresponding to the
> >levels of the "time".
> >
> >For your data example, "interaction(study,outcome)" produces 8
> elements: 1.1, 1.1,
> >1.2, 1.2, 2.1, 2.1, 3.1, 3.2, there are 3 matched pairs (e.g., 1.1, 1.1)
> and 2
> >unique elements (i.e., 3.1, 3.2).
> >
> >Are we saying that effect sizes corresponding to each matched pair (e.g.,
> 1.1,
> >1.1) are dependent, but the effect sizes corresponding to the unique
> elements
> >(i.e., 3.1, 3.2) are independent from one another?
>
> I can't quite parse your question. We are saying that the two 1.1 effects
> are dependent and that the two 1.2 effects are dependent and that the two
> 2.1 effects are dependent. But the two 1.1 effects are not correlated with
> any of the other effects and so on. If this is what you meant, then yes.
>
> >++++++Second, I understand that the syntax you suggest in your above
> response
> >provides multivariate results, but if you could possibly clarify what is
> taken as
> >crossed (I assume 'study'), and why! and what is taken as nested and why!
> I can
> >better generalize this to my own meta-analysis?
>
> There is nothing crossed here. The model below specifies a hierarchical
> model with random effects for the different levels of outcome within
> studies and random effects for the different levels of time within outcomes
> (which in turn are nested within studies). So, it looks like this:
>
>      s1        s2      s3
>      /\         |      /\
>     /  \        |     /  \
>    /    \       |    /    \
>   o1    o2     o1   o1    o2
>   /\    /\     /\    |     |
>  /  \  /  \   /  \   |     |
> t1  t2 t1 t2 t1  t2  t1    t1
>
> >Highly appreciate your expertise,
> >Jack
> >
> >On Mon, Apr 26, 2021 at 2:14 AM Viechtbauer, Wolfgang (SP)
> ><wolfgang.viechtbauer using maastrichtuniversity.nl> wrote:
> >Hi Jack,
> >
> >That syntax won't work. Assuming the data structure is like this:
> >
> >study outcome time
> >------------------
> >1     1       1
> >1     1       2
> >1     2       1
> >1     2       2
> >2     1       1
> >2     1       2
> >3     1       1
> >3     2       1
> >
> >then I might use:
> >
> >random = list(~ outcome | study, ~ time | interaction(study,outcome))
> >
> >with maybe struct = c("CS","AR") if the different levels of 'outcome' do
> not have
> >any inherent meaning and are just used to distinguish different outcomes
> for the
> >same underlying construct. If they do, then instead of "CS" one could use
> "HCS" or
> >"UN" (in which case one might also want to use yi ~
> factor(outcome)*factor(time)
> >or, equivalently, yi ~ 0 + factor(outcome) +
> factor(outcome):factor(time)). But
> >"HCS" and esp. "UN" adds many parameters if there are many outcomes, so
> this needs
> >to be balanced with how much data there is.
> >
> >Instead of "AR", one could also consider "HAR" or "CAR", but that again
> depends on
> >how much data there is and the spacing of the timepoints.
> >
> >Finally, strictly speaking, the 'V' matrix should then reflect not only
> the
> >covariances in multiple observations of the same outcome over time, but
> also among
> >different outcomes (and of different outcomes measured at different time
> points).
> >Constructing such a V matrix is tricky. The impute_covariance_matrix()
> function
> >from the clubSandwich could be useful for this (to construct an
> approximate V
> >matrix). This can then be followed by using cluster robust inference
> methods.
> >
> >Best,
> >Wolfgang
> >
> >>-----Original Message-----
> >>From: Jack Solomon [mailto:kj.jsolomon using gmail.com]
> >>Sent: Tuesday, 20 April, 2021 17:39
> >>To: r-sig-meta-analysis using r-project.org
> >>Subject: Question about longitudinal that report multiple outcomes
> >>
> >>Hi List Members,
> >>
> >>I was wondering, in this example
> >>(https://wviechtb.github.io/metafor/reference/dat.ishak2007.html), if
> the
> >>longitudinal studies also reported multiple outcomes, would we change
> our syntax
> >>to:
> >>
> >>metafor::rma.mv(yi ~ 0 + factor(time), V, random = ~ time | study /
> outcome,
> >>struct = "HAR", data = dat.long)
> >>
> >>Or additional changes to V also would be recommended?
> >>
> >>Thank you,
> >>Jack
>

	[[alternative HTML version deleted]]



More information about the R-sig-meta-analysis mailing list