Метааналіз в R з використанням пакету metafor


10

Як я повинен синтаксисувати rmaфункцію з пакету metafor , щоб отримати результати на наступному прикладі реального життя невеликого мета-аналізу? (випадковий ефект, підсумкова статистика 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

Відповіді:


10

Створіть належне 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))

Запустіть функцію rma:

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

Зверніть увагу, що це rmaпередбачає (m1i-m2i). Результатом цього є мета-аналіз моделі універсальних випадкових ефектів:

> 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 

Ви можете змінити оцінку method, наприклад method = "DL"(але я б дотримувався цього REML).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.