Создать правильное 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
).