# Meta-regression using rma from metafor, using DL random effects, with same effect for studies with same id

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?

• Is there any reason why you want to use the DerSimonian and Laird method? Aug 9 '17 at 9:52
• Yes, the reason is because I have used it for my other analyses and would like to stay consistent with the methods I used for all the analyses on this dataset. Aug 10 '17 at 6:35
• As you note, 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? Aug 10 '17 at 9:16