# 8.1. ISIS: Meta-analysis of Magnesium in Myocardial Infarction. model; { for( k in 1 : 9 ) { y[k] <- log( ((rt[k]+.5) / (nt[k]-rt[k]+.5) ) / ((rc[k]+.5) / (nc[k]-rc[k]+.5) ) ) # log -odds-ratios sigma2[k] <- 1/(rt[k]+.5) + 1/(nt[k]-rt[k]+.5) + 1/(rc[k]+.5) + 1/ (nc[k]-rc[k]+.5) # variances prec2[k]<- 1/sigma2[k] # precisions } # harmonic mean of approximate sample variances for first 8 trials s02 <- 1/mean(prec2[1:8]) # set up replicate datasets for different priors for( k in 1 : 9 ) { for(j in 1:6){ yy[j,k]<-y[k]; } } # model: j indexes alternative prior distributions, k indexes study. for(j in 1:6){ for( k in 1 : 8 ) { # just learn on first 8 studies yy[j,k] ~ dnorm(theta[j,k],prec2[k]) theta[j,k] ~ dnorm(mu[j],tau2.inv[j]) } # new trial theta.new[j] ~ dnorm(mu[j],tau2.inv[j]) # predict ISIS LOR and compare with observed y.new[j] ~ dnorm(theta.new[j],prec2[9]) p.pred[j] <- step(y.new[j] - y[9]) OR[j]<-exp(mu[j]) mu[j] ~ dunif(-10,10) } # Prior 1: Gamma(0.001,0.001) on tau2.inv tau[1]<- sqrt(tau2[1]) tau2[1]<- 1/tau2.inv[1] tau2.inv[1] ~ dgamma(0.001,0.001) # Prior 2: uniform on tau2 tau[2] <- sqrt(tau2[2]) tau2[2] ~ dunif(0,50) tau2.inv[2] <- 1/tau2[2] # Prior 3: uniform on tau tau[3] ~ dunif(0,50) tau2[3] <- tau[3] * tau[3]; tau2.inv[3] <- 1/tau2[3] # Prior 4: uniform shrinkage on tau2 tau[4]<-sqrt(tau2[4]) tau2[4] <- s02 * (1-B0)/B0; B0 ~ dunif(0,1); tau2.inv[4] <- 1/tau2[4] ; # Prior 5: Dumouchel prior on tau tau[5] <- sqrt(s02) * (1-D0)/D0; D0 ~ dunif(0,1); tau2[5]<-tau[5] * tau[5]; tau2.inv[5] <- 1/tau2[5] ; # Prior 6: Half-normal prior on tau with 'sd' = 0.5 tau2[6]<-tau[6] * tau[6]; tau[6] ~ dnorm(0,3.84)I(0,) ; tau2.inv[6] <- 1/tau2[6] ; }