metafor cero varianza nivel 2

Oct 31 2020

Me encuentro con una varianza cero en el nivel 2 para un metanálisis de 3 niveles con metafor (rma.mv) en el que los tamaños del efecto (esid) se agrupan dentro de los estudios (studyid). Aquí está mi marco de datos:

studyid <- c(1,1,1,1,3,3,4,5,5,5,5,6,6,7,7,7,7,7,7,7,7,8,8,9,10,10,10,10,11,11,11,11,12,12,13,13,14,14,
             15,15,18,18,18,18,19,19,19,20,20,20,20,21,21,21,21,22,22,22,23,23,23,24,24,25,28,28,28,
             29,29,30,30,30,31,32,32,34,34) 
esid <- c(1:77)
yi <- c(4.20,2.90,2.70,3.90,1.40,0.80,11.40,5.00,21.50,20.84,28.73,7.40,4.00,1.38,0.47,1.44,0.46,1.63,
        0.46,0.67,0.41,9.24,9.27,8.80,27.30,22.83,18.25,20.08,0.94,0.97,0.77,0.88,14.00,10.40,0.52,0.86,
        29.39,33.82,15.30,15.92,45.60,63.10,46.40,44.60,0.10,0.11,0.12,0.17,0.26,0.26,0.31,8.20,1.80,
        1.70,9.58,10.15,8.05,0.53,18.95,17.44,23.50,12.62,15.62,4.60,35.10,44.85,33.30,13.30,11.90,0.34,
        0.35,0.26,0.69,0.50,0.62,23.80,20.40)
vi <- c(2.90,2.20,2.10,3.00,2.00,1.00,11.03,8.49,16.97,20.00,26.06,3.70,4.00,0.47,0.33,0.74,0.36,0.75,
        0.33,0.44,0.37,7.60,5.63,8.80,12.01,13.15,14.41,11.57,0.57,0.76,0.43,0.62,3.50,3.00,0.59,0.65,
        10.00,11.30,6.20,6.44,23.04,27.68,17.54,13.04,0.22,0.25,0.24,0.17,0.42,0.17,0.28,7.20,2.00,2.10,
        10.08,5.30,3.75,0.68,6.70,6.53,5.74,13.91,31.65,4.10,7.54,12.81,5.28,8.20,7.70,0.25,0.28,0.19,
        0.56,0.46,0.37,23.10,15.90)
df <- data.frame(authoryr,studyid,esid,yi,vi)

Aquí está mi metafor código y salida:

overall <- rma.mv(yi, vi, 
                      data = df,
                      level = 95,
                      method = "REML", 
                      slab = authoryr, 
                      tdist = TRUE, 
                      random = list(~ 1 | esid, 
                                    ~ 1 | studyid)) 
summary(overall)

Multivariate Meta-Analysis Model (k = 77; method: REML)

   logLik   Deviance        AIC        BIC       AICc 
-229.2872   458.5745   464.5745   471.5667   464.9078   

Variance Components:

              estim     sqrt  nlvls  fixed   factor 
sigma^2.1    0.0000   0.0000     77     no     esid 
sigma^2.2  147.3645  12.1394     28     no  studyid 

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

Model Results:

estimate      se    tval    pval   ci.lb    ci.ub 
 10.7087  2.3165  4.6229  <.0001  6.0951  15.3224  *** 

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

La inspección visual de los tamaños del efecto sin procesar sugiere que existe una variación dentro de los estudios, por lo que no estoy seguro de qué está mal con mis datos (o código). Agradecería cualquier orientación sobre soluciones de la comunidad.

Respuestas

2 Wolfgang Oct 31 2020 at 16:16

Hay diferencias realmente grandes entre los estudios, pero las estimaciones dentro de los estudios no varían más de lo que cabría esperar en función de su variabilidad muestral únicamente. Ver:

forest(overall, efac=c(0,0.5))
abline(h=nrow(df) - cumsum(rle(df$studyid)$length) + 0.5, lty="dotted")

Por lo tanto, me parece perfectamente razonable que la estimación de la varianza entre estudios sea muy grande, mientras que la estimación de la varianza dentro del estudio sea esencialmente 0.