[R-meta] Differences in I^2 estimation between meta and metafor packages

Rushkin, Megan C Meg@n@C@Ru@hk|n @end|ng |rom kpchr@org
Mon May 13 05:41:40 CEST 2019

```Hi there,

I'm writing to inquire about how I2 is computed in the metafor package, specifically because the estimate differs when the same model is conducted using the meta package. This happens specifically when the Maximum Likelihood tau2  estimator is called in the "method =" argument. Below is some example code and output for the meta package's metagen() function and the metafor package's rma() function using the same model settings and data:

#----------------------------------------------------------------------------------------------------------------------------------------#

# meta package input:

overall_meta <- metagen(es, seEs, studlab = authorYear, data=new_drug, comb.fixed = FALSE, method.tau = "ML")

# meta package output:

summary(overall_meta)

Number of studies combined: k = 15
95%-CI     z p-value
Random effects model -0.0691 [-0.2555; 0.1173] -0.73  0.4674

Quantifying heterogeneity:
tau^2 = 0.0583; H = 1.46 [1.09; 1.96]; I^2 = 53.1% [15.7%; 73.9%]

Test of heterogeneity:
Q d.f. p-value
29.86   14  0.0080

Details on meta-analytical method:
- Inverse variance method
- Maximum-likelihood estimator for tau^2
#----------------------------------------------------------------------------------------------------------------------------------------#

# metafor package input:

overall_metafor <- rma(es, seEs^2, authorYear, data=new_drug, method = "ML")

# metafor package output:

summary(overall_metafor)

Random-Effects Model (k = 15; tau^2 estimator: ML)

logLik  deviance       AIC       BIC      AICc
-8.1845   26.7204   20.3689   21.7850   21.3689

tau^2 (estimated amount of total heterogeneity): 0.0583 (SE = 0.0465)
tau (square root of estimated tau^2 value):      0.2414
I^2 (total heterogeneity / total variability):   47.16%
H^2 (total variability / sampling variability):  1.89

Test for Heterogeneity:
Q(df = 14) = 29.8574, p-val = 0.0080

Model Results:

estimate      se     zval    pval    ci.lb   ci.ub
-0.0691  0.0951  -0.7267  0.4674  -0.2555  0.1173

---
Signif. codes:  0 �***� 0.001 �**� 0.01 �*� 0.05 �.� 0.1 � � 1

__________________________________________________________________

The metagen() function in the meta package arrived at an I2 estimate of 53.1%, and the rma() function in the metafor package arrived at an estimate of 47.16%. After reading through the 2002 Higgins and Thompson paper on quantifying heterogeneity in meta-analysis, I'm assuming the difference is in the computation of H2, given that I2 = H2-1 / H2

>From my understanding, H2 = Q / k-1, which in this case would be 29.8574/14 = 2.13, which is what the meta package arrived at (H = SQRT(2.13) = 1.46). I noticed that when I conducted the analysis using the DerSimonian and Laird tau2 estimator in the metafor package, the I2 estimate matched the estimate I obtained using ML in the meta package (53.1%).  Any help explaining this discrepancy would be much appreciated!