[R-meta] Difference between univariate and multivariate parameterization
Dear Wolfgang, This is a very interesting demonstration, thank you! (Of course, I'm too scared to probably fit such models, esp. if there are additional studies with just few estimates) As a follow-up, is there any difference in the interpretation of correlations among random-effects when using "UN" vs. "GEN"? Thanks, Fred On Wed, Aug 18, 2021 at 3:01 PM Viechtbauer, Wolfgang (SP) <
wolfgang.viechtbauer at 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: library(metafor) dat <- dat.crede2010 dat <- escalc(measure="ZCOR", ri=ri, ni=ni, data=dat, subset=criterion=="grade") table(dat$studyid) # most studies are single sample studies # multilevel model res1 <- rma.mv(yi, vi, random = ~ 1 | studyid/sampleid, data=dat) res1 # multivariate parameterization res2 <- rma.mv(yi, vi, random = ~ factor(sampleid) | studyid, data=dat) res2 # 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), data=dat) res3 # 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) res4 # 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) res5 So this is all possible if you like. Best, Wolfgang
-----Original Message----- From: R-sig-meta-analysis [mailto:
r-sig-meta-analysis-bounces at 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 parameterization 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 +
sigma^2_within),
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
the
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 ( https://stat.ethz.ch/pipermail/r-sig-meta-analysis/2021-July/002994.html) as I found this framework a potentially unrealistic but in the end, it's the best approach we have. Cheers, Fred On Wed, Aug 18, 2021 at 1:30 PM Luke Martinez <martinezlukerm at gmail.com> wrote:
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
matrix
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
of
sigma^2_within (within-study heterogeneity) that exists in model 1's matrix? Thank you very much for your assistance, Luke Martinez