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

Viechtbauer, Wolfgang (SP) wo||g@ng@v|echtb@uer @end|ng |rom m@@@tr|chtun|ver@|ty@n|
Mon Apr 26 09:14:21 CEST 2021


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


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