modelIPDnetmetareg <-function(){
for (i in 1:np) { # loop through individuals
# binomial likelihood of 0/1 bianry outcome y for each individual i of study j in arm k
y[i]~dbern(p[i])
# logistic transformation with treatment-by-covariate interactions - to estimate Odds Ratio (OR)
logit(p[i]) <- u[studyid[i]]+theta[studyid[i],treat[i]]*(1-equals(treat[i],baseline[i]))+beta.0[studyid[i]]*x[i]+
beta.w[studyid[i],treat[i]]*(x[i]-xbar[i])*(1-equals(treat[i],baseline[i]))+
beta.b[studyid[i],treat[i]]*(1-equals(treat[i],baseline[i]))*xbar[i]
}
for(j in 1:nIPD) { # loop through IPD studies
w[j,1]<- 0
theta[j,t[j,1]]<- 0
beta.w[j,t[j,1]] <- 0
beta.b[j,t[j,1]] <- 0
for (k in 2:na[j]) { # loop through non-referent IPD arms
# distribution of random effects
theta[j,t[j,k]] ~ dnorm(md[j,t[j,k]],precd[j,t[j,k]])
# accounting for correlation between effect sizes estimated in multi-arm trials
md[j,t[j,k]]<- mean[j,k] + sw[j,k]
w[j,k]<- (theta[j,t[j,k]] - mean[j,k])
sw[j,k]<- sum(w[j,1:(k-1)])/(k-1)
precd[j,t[j,k]]<- prec *2*(k-1)/k
#consistency equations
mean[j,k] <-d[t[j,k]] - d[t[j,1]]
beta.w[j,t[j,k]] <- bw[t[j,k]] - bw[t[j,1]]
beta.b[j,t[j,k]] <- bb[t[j,k]] - bb[t[j,1]]
}
}
#** PRIORS
# prior distribution for log-odds in baseline arm of study j
for (j in 1:nIPD) {
beta.0[j] ~ dnorm(0,.01)
u[j] ~ dnorm(0,.01)
}
# prior distribution for heterogeneity
tau ~ dnorm(0,1)%_%T(0,)
prec<- 1/pow(tau,2)
tau.sq<- pow(tau,2)
# prior distribution for basic parameters
d[ref] <- 0
bb[ref] <- 0
bw[ref] <- 0
for(k in 1:(ref-1)) {
d[k] ~ dnorm(0,.01)
bw[k]~dnorm(m.betaw,prec.betaw)
bb[k]~dnorm(m.betab,prec.betab)
}
for(k in (ref+1):nt) {
d[k] ~ dnorm(0,.01)
bw[k]~dnorm(m.betaw,prec.betaw)
bb[k]~dnorm(m.betab,prec.betab)
}
# priors for regression coefficients
m.betaw~dnorm(0,1e-2)
tau.betaw~dunif(0,2)
tau.sq.betaw <- tau.betaw*tau.betaw
prec.betaw <- 1/tau.sq.betaw
m.betab~dnorm(0,1e-2)
tau.betab~dunif(0,2)
tau.sq.betab <- tau.betab*tau.betab
prec.betab <- 1/tau.sq.betab
}
#
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.