[R-meta] Multivariate meta-analysis when "some studies" are multi-outcome

Gladys Barragan-Jason g|@dou86 @end|ng |rom gm@||@com
Thu Mar 18 11:17:07 CET 2021


Dear Wolfgang,

After reading your post carefully, I am still a bit confused about how to
implement the random effects.
My data are coded as follows (similar number or text in one lab means same
lab and similar number or text in one study means same participants). As
you can see you can have several studies from one lab and several effect
sizes for one study.
Should I then code the random effects like this:
*random=list( ~1|study,~1|lab)*
or like this:
*random=list( ~1|lab/study)*
or like that;
*random=list( ~1|lab, ~1|lab/study)*

lab       study   effect size
X              1           0.3
X              1           0.6
X              2          0.2
Y              1           0.5
Y              2           0.1
Z              1           0.1

Thanks a lot for your help.
Best wishes,
Gladys

Le mer. 17 mars 2021 à 13:27, Viechtbauer, Wolfgang (SP) <
wolfgang.viechtbauer using maastrichtuniversity.nl> a écrit :

> Dear Gladys,
>
> Whether this makes sense depends on how thse variables are coded. There
> have been several posts in the past on this mailing list where this was
> discussed. One that I quickly found is:
>
> https://stat.ethz.ch/pipermail/r-sig-meta-analysis/2018-July/000896.html
>
> Best,
> Wolfgang
>
> >-----Original Message-----
> >From: Gladys Barragan-Jason [mailto:gladou86 using gmail.com]
> >Sent: Tuesday, 16 March, 2021 11:39
> >To: Viechtbauer, Wolfgang (SP)
> >Cc: Simon Harmel; R meta
> >Subject: Re: [R-meta] Multivariate meta-analysis when "some studies" are
> multi-
> >outcome
> >
> >Dear Wolfgang,
> >
> >Following Simon's question, I am also comparing the efficiency of
> programs (pre-
> >post comparisons).
> >For some of them, I do have several effect sizes for one study and one
> lab. So I
> >was using the following code to account for it.
> >
> >res.ExpNC<-rma.mv(yi, vi, mods= ~ categ , random=list(
> ~1|study,~1|lab),data=dat2)
> >
> >But I am now wondering whether I should do this instead:
> >
> >dat2$estid <- 1:nrow(dat2)
> >res.ExpNC<-rma.mv(yi, vi, mods= ~ categ , random=list(
> >~1|study/estid,~1|lab/estid),data=dat2)
> >
> >What do you think?
> >
> >Thanks a lot for your response,
> >
> >Gladys
> >
> >Le mar. 16 mars 2021 à 11:28, Viechtbauer, Wolfgang (SP)
> ><wolfgang.viechtbauer using maastrichtuniversity.nl> a écrit :
> >Dear Simon,
> >
> >At the very least, you should add random effects at the level of the
> studies and
> >at the level of the estimates, so:
> >
> >dat$estid <- 1:nrow(dat)
> >
> >and then
> >
> >random = ~ 1 | id / estid
> >
> >For longitudinal data, one could also consider using some kind of
> autocorrelation
> >structure for the estimates within studies. There are some examples here:
> >
> >https://wviechtb.github.io/metafor/reference/dat.ishak2007.html
> >https://wviechtb.github.io/metafor/reference/dat.fine1993.html
> >
> >clubSandwich::impute_covariance_matrix() also allows for the construction
> of a V
> >matrix with an autocorrelation structure.
> >
> >If the different outcomes are meaningfully related across studies (i.e.,
> outcome
> >'1' stands for the same thing across all studies), then one could also
> consider
> >using an unstructured var-cov matrix with correlated random effects for
> outcomes
> >within studies. This would be akin to:
> >
> >https://www.metafor-project.org/doku.php/analyses:berkey1998
> >
> >Best,
> >Wolfgang
> >
> >>-----Original Message-----
> >>From: Simon Harmel [mailto:sim.harmel using gmail.com]
> >>Sent: Monday, 15 March, 2021 17:31
> >>To: Viechtbauer, Wolfgang (SP)
> >>Cc: R meta
> >>Subject: Re: [R-meta] Multivariate meta-analysis when "some studies" are
> multi-
> >>outcome
> >>
> >>Dear Prof. Viechtbauer,
> >>
> >>Many thanks for your response. I found the following particularly helpful
> >>(
> https://stat.ethz.ch/pipermail/r-sig-meta-analysis/2019-March/001484.html
> ).
> >>
> >>So, I went from my initial model: `rma.mv(d, V = SE^2, mods =
> ~factor(outcome)-1,
> >>random= ~1|id, data = dat)`
> >>to now:
> >>
> >>`V <- clubSandwich::impute_covariance_matrix(vi = dat$SE^2, cluster =
> dat$id, r =
> >>0.7)`
> >>`rma.mv(d, V = V, mods = ~factor(outcome)-1, random= ~1|id, data = dat)`
> >>
> >>However, what type of dependence is accounted for by the multilevel part
> (i.e.,
> >>`random= ~1|id`), and what type of dependence is accounted for by
> including the
> >>imputed variance-covariance matrix?
> >>
> >>Specifically, in my data, all primary studies (n=52) are longitudinal,
> 15 of them
> >>are multi-outcome, and almost all are multi-group treatments. Are all of
> these
> >>types of dependence reasonably accounted for?
> >>
> >>Many thanks for your consideration,
> >>Simon
> >>
> >>On Mon, Mar 15, 2021 at 6:54 AM Viechtbauer, Wolfgang (SP)
> >><wolfgang.viechtbauer using maastrichtuniversity.nl> wrote:
> >>Hi Simon,
> >>
> >>I would suggest to search/browse the archives, as this kind of question
> has been
> >>discussed at various points in the past. The archives can be found here:
> >>
> >>https://stat.ethz.ch/pipermail/r-sig-meta-analysis/
> >>
> >>There is no built-in search functionality for the archives, but one can
> restrict
> >>search engines to conduct searches at particular sites. For example, if
> you do a
> >>google search including
> >>
> >>site:https://stat.ethz.ch/pipermail/r-sig-meta-analysis/
> >>
> >>you should only get 'hits' from the mailing list archives. The same
> should work
> >>with DuckDuckGo. Note sure about other engines.
> >>
> >>Note that search engines index the archives at semi-regular intervals,
> so the
> >most
> >>recent posts will not show up this way, but those can be searched
> manually.
> >>
> >>Best,
> >>Wolfgang
> >>
> >>>-----Original Message-----
> >>>From: R-sig-meta-analysis [mailto:
> r-sig-meta-analysis-bounces using r-project.org] On
> >>>Behalf Of Simon Harmel
> >>>Sent: Saturday, 13 March, 2021 23:53
> >>>To: R meta
> >>>Subject: [R-meta] Multivariate meta-analysis when "some studies" are
> multi-
> >>outcome
> >>>
> >>>Dear All,
> >>>
> >>>I'm conducting a meta-analysis where 15 out of 52 studies have used more
> >>>than one outcome variable. In addition, almost all studies include
> multiple
> >>>treatments.
> >>>
> >>>A shortened version (i.e., without moderators) of our dataset appears
> below
> >>>(`*id`=study id; `d`=effect size; `SE` = standard error;
> `outcome`=outcome
> >>>variable index*).
> >>>
> >>>I was wondering what would be the appropriate modeling options for such
> a
> >>>situation?
> >>>
> >>>I appreciate your expertise and consideration,
> >>>Simon
> >>>
> >>>*#-- R data and code:*
> >>>dat <- read.csv("
> https://raw.githubusercontent.com/hkil/m/master/tst.csv")
> >>>
> >>>library(metafor)
> >>>rma.mv(d, V = SE^2, mods = ~factor(outcome)-1, random= ~1|id, data =
> dat)
> >>>## I'm assuming this would be an insufficient model
>


-- 

------------------------------------------

Gladys Barragan-Jason, PhD.  Website
<https://sites.google.com/view/gladysbarraganjason/home>

Station d'Ecologie Théorique et Expérimentale (SETE)

CNRS de Moulis

[image: image.png][image: image.png]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://stat.ethz.ch/pipermail/r-sig-meta-analysis/attachments/20210318/994a9167/attachment-0001.html>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: image003.png
Type: image/png
Size: 7519 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-sig-meta-analysis/attachments/20210318/994a9167/attachment-0001.png>


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