I am kind of new to JAGS, and I am trying to estimate a random intercept logit model. But somehow I am still getting this error message after debug:
Error in jags.model("model.txt", data = dataList, n.chains = nChains, :
RUNTIME ERROR:
Compilation error on line 4.
Unable to resolve node mu[1]
This may be due to an undefined ancestor node or a directed cycle in the graph
I believe I've defined all parameters....Here are r and rjags codes to estimate a simplified debuggable version of the model. Also the group variable countryR has been sorted and recoded into 1-33 in Stata before data being read into R.
require(foreign)require(rjags)modelstring="model{for(iin1:nData){hlthprc2[i]~dbern(mu[i])logit(mu[i])<-b0[countryR[i]]+b1*age[i]}b[1]~dnorm(0,1.0E-12)for(kin1:nGroup){b0[k]~dnorm(b0.mean,b0.tau)}b0.mean~dnorm(0,1.0E-4)b0.tau~dgamma(1.0E-3,1.0E-3)}"writeLines(modelstring,con="model.txt")dataSource=read.dta("data/issp2007Bayes10pct.dta",convert.factor=FALSE)dataMat=as.matrix(dataSource)nData=NROW(dataMat)hlthprc2=as.matrix(dataMat[,1])age=as.matrix(dataMat[,2])countryR=as.matrix(dataMat[,13])nGroup=length(unique(dataSource$countryR))dataList=list('hlthprc2'=as.vector(hlthprc2),'age'=as.vector(age),'countryR'=as.vector(countryR),'nGroup'=nGroup,'nData'=nData)parameters=c("b0","b1")adaptSteps=1000burnInSteps=2000nChains=3numSavedSteps=50000thinSteps=1nPerChain=ceiling((numSavedSteps*thinSteps)/nChains)# Steps per chain.# Create, initialize, and adapt the model:jagsModel=jags.model("model.txt",data=dataList,n.chains=nChains,n.adapt=adaptSteps)# Burn-in:cat("BurningintheMCMCchain...\n")update(jagsModel,n.iter=burnInSteps)# The saved MCMC chain:cat("SamplingfinalMCMCchain...\n")codaSamples=coda.samples(jagsModel,variable.names=parameters,n.iter=nPerChain,thin=thinSteps)mcmcChain=as.matrix(codaSamples)
Last edit: Jun Xu 2013-12-28
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Dear all,
I am kind of new to JAGS, and I am trying to estimate a random intercept logit model. But somehow I am still getting this error message after debug:
Error in jags.model("model.txt", data = dataList, n.chains = nChains, :
RUNTIME ERROR:
Compilation error on line 4.
Unable to resolve node mu[1]
This may be due to an undefined ancestor node or a directed cycle in the graph
I believe I've defined all parameters....Here are r and rjags codes to estimate a simplified debuggable version of the model. Also the group variable countryR has been sorted and recoded into 1-33 in Stata before data being read into R.
Last edit: Jun Xu 2013-12-28
so careless of me. Here b[1] should be b1.