比例的荟萃分析

Meta-analysis of proportion

我试图对单一比例进行荟萃分析。这是 R 代码:

# Packages
library(metafor)

# Data
dat <- dat.debruin2009 #from metafor package

# Metafor package ----
dat <- escalc(measure = "PLO", xi = xi, ni = ni, data = dat)

## Calculate random effect
res <- rma(yi, vi, data = dat)
res
predict(res, transf = transf.ilogit)

这是 res 对象的原始结果 (logit):

Random-Effects Model (k = 13; tau^2 estimator: REML)

tau^2 (estimated amount of total heterogeneity): 0.4014 (SE = 0.1955)
tau (square root of estimated tau^2 value):      0.6336
I^2 (total heterogeneity / total variability):   90.89%
H^2 (total variability / sampling variability):  10.98

Test for Heterogeneity:
Q(df = 12) = 95.9587, p-val < .0001

Model Results:

estimate      se     zval    pval    ci.lb   ci.ub 
 -0.1121  0.1926  -0.5821  0.5605  -0.4896  0.2654    

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

这是 predict() 的结果:

   pred  ci.lb  ci.ub  pi.lb  pi.ub 
 0.4720 0.3800 0.5660 0.1962 0.7660 

所以,我的问题是我从原始结果 (p = 0.5605) 得到了一个不显着的结果。但是,来自 predict() 的 CI 不会过零 (CI = 0.3800, 0.5660 ),这表明结果很重要。我是否误解了某些内容或遗漏了 R 代码中的某个步骤?或任何解释为什么结果自相矛盾?

============================================= ======

编辑: 我尝试使用 meta 包,我得到了与 metafor 类似的矛盾结果。

meta_pkg <- meta::metaprop(xi, ni, data = dat)
meta_pkg$.glmm.random

这是结果(与上面的 predict() 类似的结果):

> meta_pkg
Number of studies combined: k = 13
Number of observations: o = 1516
Number of events: e = 669

                     proportion           95%-CI
Common effect model      0.4413 [0.4165; 0.4664]
Random effects model     0.4721 [0.3822; 0.5638]

Quantifying heterogeneity:
 tau^2 = 0.3787; tau = 0.6154; I^2 = 87.5% [80.4%; 92.0%]; H = 2.83 [2.26; 3.54]

Test of heterogeneity:
      Q d.f.  p-value             Test
  95.96   12 < 0.0001        Wald-type
 108.77   12 < 0.0001 Likelihood-Ratio

Details on meta-analytical method:
- Random intercept logistic regression model
- Maximum-likelihood estimator for tau^2
- Logit transformation

与 metafor 中类似的原始结果:

> meta_pkg$.glmm.random

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

tau^2 (estimated amount of total heterogeneity): 0.3787
tau (square root of estimated tau^2 value):      0.6154
I^2 (total heterogeneity / total variability):   90.3989%
H^2 (total variability / sampling variability):  10.4155

Tests for Heterogeneity:
Wld(df = 12) =  95.9587, p-val < .0001
LRT(df = 12) = 108.7653, p-val < .0001

Model Results:

estimate      se     zval    pval    ci.lb   ci.ub 
 -0.1118  0.1880  -0.5946  0.5521  -0.4804  0.2567    

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

p值是检验平均logit变换比例是否显着不同于0。这与检验比例是否显着不同于0是不一样的。事实上,transf.ilogit(0)给出0.5,所以这是被测比例的对应值。你会注意到 0.5 在反向转换后落在置信区间内。所以一切都是完全一致的。