Meta für Nullvarianzstufe 2

Oct 31 2020

Ich stoße auf Stufe 2 auf eine Nullvarianz für eine 3-Stufen-Metaanalyse mit Metafor (rma.mv), bei der die Effektgrößen (esid) in Studien (studyid) zusammengefasst sind. Hier ist mein Datenrahmen:

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)

Hier ist mein Metafor-Code und meine Ausgabe:

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

Eine visuelle Überprüfung der Roheffektgrößen deutet darauf hin, dass es innerhalb der Studien Abweichungen gibt, sodass ich nicht sicher bin, was mit meinen Daten (oder meinem Code) nicht stimmt. Ich würde mich über jede Anleitung zu Lösungen aus der Community freuen.

Antworten

2 Wolfgang Oct 31 2020 at 16:16

Es gibt wirklich große Unterschiede zwischen den Studien, aber die Schätzungen innerhalb der Studien variieren nicht mehr als man erwarten würde, allein aufgrund ihrer Stichprobenvariabilität. Sehen:

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

Daher erscheint es mir völlig vernünftig, dass die Schätzung der Varianz zwischen den Studien sehr groß ist, während die Schätzung der Varianz innerhalb der Studie im Wesentlichen 0 beträgt.