My question is: how do include both baseline (experimental and control
group) in the analysis as a covariate in 'metafor'?
So, far, this is what I did.
I kinly request some help tp add the baseline as covariate to comply with
the Cochrane suggestion-
How can I add the baseline mean in both groups?
Should I consider baseline standard deviation, and if yes, how?
Should I take into account dropouts? I mean, in some sample at baseline n =
30 and 35 and at end of treatment n was 28 and 29...
Thank you in advance,
Antonello Preti
This is my dataset (with imputed r = 0.70 for pre-post correlation, put in
the 'ri' variable):
##### the data
dat <- structure(list(study = structure(c(11L, 8L, 7L, 12L, 13L, 4L,
5L, 1L, 10L, 3L, 6L, 9L, 2L), .Label = c("Study A, 2012",
"Study B, 2013", "Study C, 2013", "Study D, 2010",
"Study E, 2012", "Study F, 2013", "Study G, 2006",
"Study H, 2005", "Study I, 2013", "Study L, 2012",
"Study M, 2003", "Study N, 2007", "Study P, 2007"
), class = "factor"), c_pre_mean = c(4.9, 15.18, 19.01, 5.1,
16.5, 27.35, 18.1, 2.4, 14.23, 0.08, 21.26, 21.5, 21.73), c_pre_sd = c(2.6,
2.21, 7.1, 1.5, 7.2, 13.92, 5.4, 0.13, 4.89, 0.94, 7.65, 5.22,
8.43), c_post_mean = c(6.1, 13.98, 18.5, 4.53, 15.9, 23, 16.9,
2.2, 16.58, -0.02, 16, 16.84, 23.54), c_post_sd = c(2.06, 3.24,
7, 2.06, 6.8, 12.06, 3.8, 0.13, 6.35, 0.88, 4.69, 4.64, 6.74),
c_sample = c(14, 13, 19, 15, 34, 20, 24, 35, 31, 26, 49,
21, 22), e_pre_mean = c(4.6, 13.81, 19.9, 5.3, 18.7, 22.71,
19.2, 2.7, 15.97, -0.22, 20.9, 20.43, 21.94), e_pre_sd = c(2.1,
6.64, 8.1, 2.9, 7.3, 7.82, 4.1, 0.13, 6.73, 0.93, 5.18, 4.87,
7.02), e_post_mean = c(4.64, 15.86, 18.1, 4.33, 17.2, 24.89,
17.6, 2.8, 13.6, 0.06, 17.41, 16.05, 19.29), e_post_sd = c(2.34,
7.76, 7.8, 2.26, 7.4, 11.89, 3.7, 0.13, 5.79, 1.12, 5.16,
4.17, 6.58), e_sample = c(14, 18, 16, 16, 33, 28, 29, 36,
38, 27, 43, 25, 17), ri = c(.70,
.70,.70,.70,.70,.70,.70,.70,.70,.70,.70,.70,.70)), .Names = c("study",
"c_pre_mean", "c_pre_sd",
"c_post_mean", "c_post_sd", "c_sample", "e_pre_mean", "e_pre_sd",
"e_post_mean", "e_post_sd", "e_sample", "ri"), class = "data.frame",
row.names = c(NA,
-13L))
### check the data
dim(dat)
head(dat)
str(dat)
attach(dat) #### yes, I know, do'nt do this....
# call the library
library(metafor)
# Computing Standardized Mean Difference (Hedges' g) for Each Group
(experimental and control) at post treatment
# use "SMD" for the standardized mean difference using raw score
standardization
datT <- escalc(measure="SMD", m1i=e_post_mean, sd1i=e_post_sd,
n1i=e_sample, m2i=c_post_mean, sd2i=c_post_sd, n2i=c_sample, vtype="UB",
data=dat, append=TRUE)
# Extract the effect size ( Standardized Mean Difference (Hedges' g)) and
its variance
yi <- datT$yi
vi <- datT$vi
###############################################
#
# fixed-effects model
#
###############################################
model.FE <- rma(yi, vi, method="FE", digits=2)
summary(model.FE)
# plot globale
plot(model.FE, slab=paste(study))
[[alternative HTML version deleted]]
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.