Metanálisis en R usando el paquete metafor


10

¿Cómo debo sintaxis de la rmafunción del paquete metafor para obtener resultados en el siguiente ejemplo de la vida real de un pequeño metanálisis? (efecto aleatorio, estadística resumida SMD)

study,      mean1, sd1,    n1,  mean2,  sd2,   n2

Foo2000,    0.78,  0.05,   20,  0.82,   0.07,  25    
Sun2003,    0.74,  0.08,   30,  0.72,   0.05,  19    
Pric2005,   0.75,  0.12,   20,  0.74,   0.09,  29    
Rota2008,   0.62,  0.05,   24,  0.66,   0.03,  24    
Pete2008,   0.68,  0.03,   10,  0.68,   0.02,  10

Respuestas:


10

Crea un apropiado data.frame:

df <- structure(list(study = structure(c(1L, 5L, 3L, 4L, 2L), .Label = c("Foo2000", 
"Pete2008", "Pric2005", "Rota2008", "Sun2003"), class = "factor"), 
    mean1 = c(0.78, 0.74, 0.75, 0.62, 0.68), sd1 = c(0.05, 0.08, 
    0.12, 0.05, 0.03), n1 = c(20L, 30L, 20L, 24L, 10L), mean2 = c(0.82, 
    0.72, 0.74, 0.66, 0.68), sd2 = c(0.07, 0.05, 0.09, 0.03, 
    0.02), n2 = c(25L, 19L, 29L, 24L, 10L)), .Names = c("study", 
"mean1", "sd1", "n1", "mean2", "sd2", "n2"), class = "data.frame", row.names = c(NA, 
-5L))

Ejecute la rmafunción:

library(metafor)
rma(measure = "SMD", m1i = mean1, m2i = mean2, 
    sd1i = sd1, sd2i = sd2, n1i = n1, n2i = n2, 
    method = "REML", data = df)

Tenga en cuenta que rmaasume (m1i-m2i). Esto da como resultado el siguiente metanálisis del modelo de efectos aleatorios univariantes:

> rma(measure = "SMD", m1i = mean1, m2i = mean2, 
+     sd1i = sd1, sd2i = sd2, n1i = n1, n2i = n2, 
+     method = "REML", data = df)

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

tau^2 (estimate of total amount of heterogeneity): 0.1951 (SE = 0.2127)
tau (sqrt of the estimate of total heterogeneity): 0.4416
I^2 (% of total variability due to heterogeneity): 65.61%
H^2 (total variability / within-study variance):   2.91

Test for Heterogeneity: 
Q(df = 4) = 11.8763, p-val = 0.0183

Model Results:

estimate       se     zval     pval    ci.lb    ci.ub          
 -0.2513   0.2456  -1.0233   0.3061  -0.7326   0.2300          

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

Es posible que desee cambiar la estimación method, por ejemplo method = "DL"(pero me quedaría con REML).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.