# This file run IPDnetmeta, IPDnetmetareg, IPDADnetmeta, IPDADnetmetareg for simulations
# To date (19.6.2020) I did not replicate simulations for many times but the results so far are reasonable to some extent.
# in JAGS model, j refers to study and i to participant but this is reveresed in the description file!
# libraries
library(devtools)
library(R2jags)
install_github('htx-r/GenericModelNMA',force = T)
library(GenericModelNMA)
#** IPDnetmeta
# simulate data
ds <- simulateIPDADnetmeta(reg = FALSE)
IPDdata <- ds$IPDdata
# make data in jagsmodel format
m <- matrix(c(rep(c(1,2),5),rep(c(1,3),5),rep(c(2,3),5)),nrow=15,ncol = 2,byrow = T)
jagsdataIPDnetmeta <- list(y=IPDdata$y,treat=as.numeric(as.factor(IPDdata$treat)),baseline=rep(1,nrow(IPDdata)),studyid=IPDdata$studyid,
t=m,np=nrow(IPDdata),na=rep(2,15),nt=3,nIPD=15,ref=1)
# run jagsmodel
jagsmodelIPDnetmeta <- jags.parallel(data = jagsdataIPDnetmeta,inits=NULL,parameters.to.save = c('d','tau'),model.file = modelIPDnetmeta,
n.chains=3,n.iter = 10000,n.burnin = 2000,DIC=F,n.thin = 1)
jagsmodelIPDnetmeta
#** IPDnetmetareg
# simulate data
ds <- simulateIPDADnetmeta(reg = TRUE)
IPDdata <- ds$IPDdata
# make data in jagsmodel format
xbar0 <- sapply(1:15, function(i) mean(IPDdata$x[IPDdata$studyid==i]))
npIPD <- sapply(1:15, function(i) nrow(IPDdata[IPDdata$studyid==i,]))
xbar <- rep(xbar0, times=npIPD)
m <- matrix(c(rep(c(1,2),5),rep(c(1,3),5),rep(c(2,3),5)),nrow=15,ncol = 2,byrow = T)
jagsdataIPDnetmetareg <- list(y=IPDdata$y,treat=as.numeric(as.factor(IPDdata$treat)),baseline=rep(1,nrow(IPDdata)),studyid=IPDdata$studyid,
t=m,np=nrow(IPDdata),na=rep(2,15),nt=3,nIPD=15,ref=1,
x=IPDdata$x,xbar=xbar)
# run jags model
jagsmodelIPDnetmetareg <- jags.parallel(data = jagsdataIPDnetmetareg,inits=NULL,parameters.to.save = c('d','bw','bb'),model.file = modelIPDnetmetareg,
n.chains=3,n.iter = 1000,n.burnin = 200,DIC=F,n.thin = 1)
jagsmodelIPDnetmetareg
#** IPDADnetmeta
# simulate data
ds <- simulateIPDADnetmeta(reg = FALSE)
IPDdata <- ds$IPDdata
ADdata <- ds$ADdata
# make data in jagsmodel format
m <- matrix(c(rep(c(1,2),5),rep(c(1,3),5),rep(c(2,3),5),
rep(c(1,2),10),rep(c(1,3),10),rep(c(2,3),10)),nrow=(15+30),ncol = 2,byrow = T)
rmat <- matrix(c(ADdata$r[1:10],ADdata$r[21:30],rep(NA,10),ADdata$r[11:20],rep(NA,10),ADdata$r[41:50],
rep(NA,10),ADdata$r[31:40],ADdata$r[51:60]),nrow=30,ncol = 3)
nmat <- matrix(c(ADdata$n[1:10],ADdata$n[21:30],rep(NA,10),ADdata$n[11:20],rep(NA,10),ADdata$n[41:50],
rep(NA,10),ADdata$n[31:40],ADdata$n[51:60]),nrow=30,ncol = 3)
jagsdataIPDADnetmeta <- list(y=IPDdata$y,treat=as.numeric(as.factor(IPDdata$treat)),baseline=rep(1,nrow(IPDdata)),studyid=IPDdata$studyid,
t=m,np=nrow(IPDdata),na=rep(2,(15+30)),nt=3,nIPD=15,ref=1,
nAD=30,r=rmat,n=nmat)
# run jags model
jagsmodelIPDADnetmeta <- jags.parallel(data = jagsdataIPDADnetmeta,inits=NULL,parameters.to.save = c('d','tau'),model.file = modelIPDADnetmeta,
n.chains=3,n.iter = 1000,n.burnin = 200,DIC=F,n.thin = 1)
jagsmodelIPDADnetmeta
#** IPDADnetmetareg
# simulate data
ds <- simulateIPDADnetmeta(reg = TRUE)
IPDdata <- ds$IPDdata
# make data in jagsmodel format
xbar0 <- sapply(1:15, function(i) mean(IPDdata$x[IPDdata$studyid==i]))
npIPD <- sapply(1:15, function(i) nrow(IPDdata[IPDdata$studyid==i,]))
xbar <- rep(xbar0, times=npIPD)
ADdata <- ds$ADdata
xbar.a <- ADdata$xbar.a[1:30]
m <- matrix(c(rep(c(1,2),5),rep(c(1,3),5),rep(c(2,3),5),
rep(c(1,2),10),rep(c(1,3),10),rep(c(2,3),10)),nrow=(15+30),ncol = 2,byrow = T)
rmat <- matrix(c(ADdata$r[1:10],ADdata$r[21:30],rep(NA,10),ADdata$r[11:20],rep(NA,10),ADdata$r[41:50],
rep(NA,10),ADdata$r[31:40],ADdata$r[51:60]),nrow=30,ncol = 3)
nmat <- matrix(c(ADdata$n[1:10],ADdata$n[21:30],rep(NA,10),ADdata$n[11:20],rep(NA,10),ADdata$n[41:50],
rep(NA,10),ADdata$n[31:40],ADdata$n[51:60]),nrow=30,ncol = 3)
jagsdataIPDADnetmetareg <- list(y=IPDdata$y,treat=as.numeric(as.factor(IPDdata$treat)),baseline=rep(1,nrow(IPDdata)),studyid=IPDdata$studyid,
t=m,np=nrow(IPDdata),na=rep(2,(15+30)),nt=3,nIPD=15,ref=1,x=IPDdata$x,xbar=xbar,
nAD=30,r=rmat,n=nmat,xbar.a=xbar.a)
# run jags model
jagsmodelIPDADnetmetareg <- jags.parallel(data = jagsdataIPDADnetmetareg,inits=NULL,parameters.to.save = c('d','tau','bb','bw','LOR'),model.file = modelIPDADnetmetareg,
n.chains=3,n.iter = 1000,n.burnin = 200,DIC=F,n.thin = 1)
jagsmodelIPDADnetmetareg
#
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.