I would like to run a meta-regression on my dataset using DerSimonian-Laird (DL) random-effects model. For some studies in my dataset, I have more than one datapoint. Therefore, I would like to attribute the same random effect to each study with same id or, in other words, I would like to use a fixed effects model to analyse the studies with the same id and a random effects model with studies with different id.
Right now, I am using the following command:
rma(x, sei=x_se, mods = ~ y, data=data1, method="DL")
I tried to add the argument "random" to this function, to attribute the same random effect to each study with the same id, but rma.uni does not have a "random" argument:
rma(x, sei=x_se, mods = ~ y, data=data1, method="DL", random = ~ 1 | id)
On the other hand, the function rma.mv has a "random", but I can only choose between the methods "ML" or "REML":
rma.mv(x, x_se^2, mods = ~ y, data=data1, method="REML", random = ~ 1 | id)
Is there a way that I can do this meta-regression using DL random effects model and attributing the same random effect to each study with same id? Should I use rma.uni, rma.mv or another function?
rma.mv()
can do ML and REML. Extensions of other methods (like DL) are model specific and do not easily lend themselves to generalization. For example Jackson et al. (2010) (DOI: 10.1002/sim.3602) have extended DL to a particular multivariate model. But change one aspect of that model (e.g., add another random effect) and you have to try to re-derive everything from scratch. And why not just use ML/REML for all of your analyses anyway? $\endgroup$robust(rma(x, sei=x_se, mods = ~ y, data=data1, method="DL"),data$id)
$\endgroup$