#MIXED-LEVEL META-ANALYSIS SURVIVAL DATA
data(ipd.data)
example(ipd.data)
data(meta.data)
example(meta.data)
set.seed(401)
#FIXED EFFECTS
fit <- mlma(
Surv(time,event)~trt,surv~log(time)+trt,
ipd.data=ipd.data,
meta.data=meta.data,
ipd.groups=8,meta.groups=2,
study.group=meta.data$sub.group,
sigma2=meta.data$sigma2,
fixed=TRUE
)
fit$coef #MODEL FIT
sqrt(diag(fit$var)) #STANDARD ERROR
#MIXED EFFECTS, BASELINE FRAILTY BY GROUP
fit <- mlma(
Surv(time,event)~trt,surv~log(time)+trt,~(1|group),
ipd.data,
meta.data,
ipd.groups=8,meta.groups=2,
study.group=meta.data$sub.group,
sigma2=meta.data$sigma2,
max.iter=3
)
fit$coef #MODEL FIT
sqrt(diag(fit$var$coef)) #STANDARD ERROR
#ECOLOGICAL BIAS
#MIXED-LEVEL WITH ECOLOGICAL BIAS
#MIXED EFFECTS MLMA SEPARATING STUDY-LEVEL AND INDIVIDUAL-LEVEL X EFFECTS
#SIMULATION EFFECTS TO GENERATE MIXED.BIASED
beta = array(c(0,-.5,-.2,0,-.4,0))
names(beta) <- c("int","trt","x","x.bar","trt and x","trt and x.bar")
data(mixed.biased)
fit <- mlma(
Surv(time,event)~trt*I(x-x.bar)+trt*x.bar,surv~log(time)+trt*x.bar,
~(1|group),
mixed.biased$ipd,
mixed.biased$meta,
ipd.groups=5,meta.groups=5,
mixed.biased$meta$sigma2,
mixed.biased$meta$sub.group,
max.iter=3
)
fit$coef #MODEL FIT
sqrt(diag(fit$var$coef)) #STANDARD ERROR
sqrt(diag(fit$vcov)) #ESTIMATED FRAILTY STANDARD DEVIATION
#95\% CI FOR EQUIVALENCE OF STUDY- AND INDIVIDUAL-LEVEL X (MAIN EFFECT)
C <- c(0,-1,1,0,0,0,0)
ci(C,fit$coef,fit$var$coef)
#95\% FOR EQUIVALENCE OF STUDY- AND INDIVIDUAL-LEVEL X-TRT (INTERACTION)
C <- c(0,0,0,-1,1,0,0)
ci(C,fit$coef,fit$var$coef)
Run the code above in your browser using DataLab