library(R2WinBUGS)
IPSS=readRDS(file = "IPSS_CC.rds") #Reading data file
###Data Preparation for WinBugs##########
ID=IPSS[,1]
time=IPSS[,2]
y=IPSS[,3]
N=nrow(IPSS)
M=70
dat=list("ID","time","y","N","M")
init=function(){list(beta=c(2,2),prec.sigma2=1,
prec.sigma=matrix(c(1,0,
0,1),2,2))}
setwd("C:/Users/mnudd/Desktop/IndStudy/WinBUGS14")
IP_res=bugs(data=dat, inits = init, model.file = "IPSS(325_3).bug",
parameters=c("beta","Sigma","sigma2","v"),
n.chains = 1,n.iter=5500,n.burnin=500,n.thin=10,
bugs.directory="C:/Users/mnudd/Desktop/IndStudy/WinBUGS14",debug=T,codaPkg=F)
Когда я запускаю приведенный выше код из R с помощью пакета R2WinBUGS, следующее сообщение появляется в окне WinBUG.
display(log)
check(C:/Users/mnudd/AppData/Local/Temp/RtmpcVVVuR/IPSS(325_3).bug.txt)
model is syntactically correct
data(C:/Users/mnudd/AppData/Local/Temp/RtmpcVVVuR/data.txt)
data loaded
compile(1)
model compiled
inits(1,C:/Users/mnudd/AppData/Local/Temp/RtmpcVVVuR/inits1.txt)
undefined variable
gen.inits()
initial values generated, model initialized
thin.updater(10)
update(50)
set(beta)
set(Sigma)
set(sigma2)
set(v)
set(deviance)
dic.set()
update(500)
coda(*,C:/Users/mnudd/AppData/Local/Temp/RtmpcVVVuR/coda)
stats(*)
Хотя я получаю результаты моделирования, он все еще показывает, что неопределенная переменная в окне журнала.Могу ли я определить, какие переменные не определены?Буду признателен за вашу помощь.Заранее спасибо.
Вот файл .bug
model{
for (i in 1:N){
mu[i] <- v[ID[i],1] + v[ID[i],2]*time[i]
y[i] ~ dnorm(mu[i], prec.sigma2)
}
for (j in 1:M){
v[j,1:2] ~ dmnorm(beta[1:2], prec.Sigma[,])
}
beta[1] ~ dnorm(0.0,1.0E-4)
beta[2] ~ dnorm(0.0,1.0E-2)
prec.sigma2 ~ dgamma(0.01,0.01)
prec.Sigma[1:2, 1:2] ~ dwish(Omega[,], 2)
Sigma[1:2,1:2] <- inverse(prec.Sigma[,])
sigma2 <- 1/prec.sigma2
Omega[1,1] <- 1
Omega[2,2] <- 1
Omega[1,2] <- 0
Omega[2,1] <- 0
}