[R-meta] Definition of random effect in meta-regression vs multilevel modeling

Viechtbauer, Wolfgang (SP) wo||g@ng@v|echtb@uer @end|ng |rom m@@@tr|chtun|ver@|ty@n|
Thu Jul 8 13:55:50 CEST 2021

Dear Fred,

I don't think you ever got a response to this question. I would say yes, the meaning is the same, but there may be differences in the details / implementation. For example, things like '~ 1 | id' work the same for lme() and rma.mv(), but if you do 

random = ~ var1 | var2

in lme(), then the var-cov matrix of the random effects is by default assumed to be unstructured (or more precisely, it's assumed to be a positive (semi-)definite matrix). In rma.mv(),

random = ~ var1 | var2

assumes a compound symmetric structure (struct="CS") by default (which can be changed via the 'struct' argument). Also, in lme(), there can be one or multiple variables on the left of |, some of which can also be numeric (for 'random slopes'), while in rma.mv() there can only be one variable on the left of | and it must be a string/factor variable. In essence, 

random = ~ var1 | var2, struct="UN"

in rma.mv() is equivalent to

random = ~ 0 + var1 | var2

in lme() and if struct="CS", then it is equivalent to

random = list(var2 = pdCompSymm(~ 0 + var1))

in lme() (assuming var1 is a string/factor variable). If you want the same behavior as lme() (including the possibility of multiple variables on the left | including numeric ones), you can use struct="GEN". Also, there are some other structures in rma.mv() such as those for temporal/spatial autocorrelation that do not have direct counterparts in lme() and that behave a bit differently (one can model temporal/spatial autocorrelation in the residuals in lme() models, but not in the random effects).

I hope this helps to clarify things.


>-----Original Message-----
>From: R-sig-meta-analysis [mailto:r-sig-meta-analysis-bounces using r-project.org] On
>Behalf Of Farzad Keyhan
>Sent: Friday, 25 June, 2021 18:27
>To: r-sig-meta-analysis using r-project.org
>Subject: [R-meta] Definition of random effect in meta-regression vs multilevel
>Hello List Members,
>In ordinary multilevel modeling, the question of what is a random effect
>often revolves around whether to call the right side (here intercepts) or
>left side (a grouping variable) of `|` in the following: `~ 1 | id`.
>Question: Do terms like "random slopes" (e.g., `~ factor(time) | studyID`)
>and "random intercepts" (e.g., `~ 1 | studyID`) have the same meaning in
>multilevel/multivariate meta-regression modeling as they do in ordinary
>multilevel modeling?

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