[R-meta] Difference between univariate and multivariate parameterization
m@rt|nez|ukerm @end|ng |rom gm@||@com
Thu Aug 19 05:05:12 CEST 2021
Thanks for your reply. But, if in the multivariate specification: tau^2 =
sigma^2_between + sigma^2_within, then in your suggested "res5" model
where you fixed tau2 = 0 for single sample studies, you have killed both
sigma^2_between + sigma^2_within, and not just sigma^2_within?
Am I missing something?
Thank you very much,
On Wed, Aug 18, 2021 at 3:01 PM Viechtbauer, Wolfgang (SP) <
wolfgang.viechtbauer using maastrichtuniversity.nl> wrote:
> It is also possible to formulate a model where sigma^2_within is *not*
> added for 'single sample/estimate studies'. Let's consider this example:
> dat <- dat.crede2010
> dat <- escalc(measure="ZCOR", ri=ri, ni=ni, data=dat,
> table(dat$studyid) # most studies are single sample studies
> # multilevel model
> res1 <- rma.mv(yi, vi, random = ~ 1 | studyid/sampleid, data=dat)
> # multivariate parameterization
> res2 <- rma.mv(yi, vi, random = ~ factor(sampleid) | studyid, data=dat)
> # as a reminder, the multilevel model is identical to this formulation
> dat$sampleinstudy <- paste0(dat$studyid, ".", dat$sampleid)
> res3 <- rma.mv(yi, vi, random = list(~ 1 | studyid, ~ 1 | sampleinstudy),
> # logical to indicate for each study whether it is a multi sample study
> dat$multsample <- ave(dat$studyid, dat$studyid, FUN=length) > 1
> # fit model that allows for a different sigma^2_within for single vs multi
> sample studies
> res4 <- rma.mv(yi, vi, random = list(~ 1 | studyid, ~ multsample |
> sampleinstudy), struct="DIAG", data=dat)
> # fit model that forces sigma^2_within = 0 for single sample studies
> res5 <- rma.mv(yi, vi, random = list(~ 1 | studyid, ~ multsample |
> sampleinstudy), struct="DIAG", tau2=c(0,NA), data=dat)
> So this is all possible if you like.
> >-----Original Message-----
> >From: R-sig-meta-analysis [mailto:
> r-sig-meta-analysis-bounces using r-project.org] On
> >Behalf Of Farzad Keyhan
> >Sent: Wednesday, 18 August, 2021 21:32
> >To: Luke Martinez
> >Cc: R meta
> >Subject: Re: [R-meta] Difference between univariate and multivariate
> >Dear Luke,
> >In the multivariate specification (model 2), tau^2 = sigma^2_between +
> >sigma^2_within. You can confirm that by your two models' output as well.
> >Also, because rho = sigma^2_between / (sigma^2_between +
> >then, the off-diagonal elements of the matrix can be shown to be rho*tau^2
> >which again is equivalent to sigma^2_between in model 1's matrix.
> >Note that sampling errors in a two-estimate study could be different hence
> >appropriate subscripts will be needed to distinguish between them.
> >Finally, note that even a study with a single effect size estimate gets
> >sigma^2_within, either directly (model 1) or indirectly (model 2) which
> >would mean that, that one-estimate study **could** have had more estimates
> >but it just so happens that it doesn't as a result of some form of
> >multi-stage sampling; first studies, and then effect sizes from within
> >those studies.
> >I actually raised this last point a while back on the list (
> >as I found this framework a potentially unrealistic but in the end, it's
> >the best approach we have.
> >On Wed, Aug 18, 2021 at 1:30 PM Luke Martinez <martinezlukerm using gmail.com>
> >> Dear Colleagues,
> >> Imagine I have two models.
> >> Model 1:
> >> random = ~1 | study / row_id
> >> Model 2:
> >> random = ~ row_id | study, struct = "CS"
> >> I understand that the diagonal elements of the variance-covariance
> >> of a study with two effect size estimates for each model will be:
> >> Model 1:
> >> VAR(y_ij) = sigma^2_between + sigma^2_within + e_ij
> >> Model 2:
> >> VAR(y_ij) = tau^2 + e_ij
> >> Question: In model 2's variance-covariance matrix, what fills the role
> >> sigma^2_within (within-study heterogeneity) that exists in model 1's
> >> matrix?
> >> Thank you very much for your assistance,
> >> Luke Martinez
[[alternative HTML version deleted]]
More information about the R-sig-meta-analysis