# Code Problem in Lognormal Bayesian Model in JAGS/WinBUGS

I have a data set with 853 units. Below, a small sample of it:

y

 [1]  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000
[10]  0.000000  6.751283  0.000000  0.000000 11.927481  0.000000  0.000000  0.000000  0.000000
[19]  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000
[28]  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000  0.000000
[37]  0.000000  0.000000  0.000000  0.000000  5.342471  2.286760  0.000000  0.000000  3.464403
[46]  3.952309 16.030779 17.942967  0.000000  0.000000


    gdp.cap     bf.cap
1  8.789771 0.03911118
2 10.204732 0.02341257
3  6.890112 0.04160150
4  9.178957 0.03892352
5  9.384171 0.03880186
6  9.562188 0.04165802


I'm calling JAGS from R to run the following code:

1) In JAGS

model {

# Lognormal likelihood
for(i in 1:N) {
y[i] ~ dlnorm(mu[i], tau)
mu[i] <- beta0 + inprod(x[i,], beta[])
}

# Prior for betas
beta0 ~ dnorm(mbeta0, precbeta0)

for (j in 1:K) { # b are the number betas to be estimated
beta[j] ~ dnorm(m[j], prec[j])
}

# Prior for precision of Y
tau ~ dgamma(tau.a, tau.b)
sigma <- 1/sqrt(tau)

}


2) In R:

dt <- read.csv("data.csv", header=T, sep=',')
dt <- na.omit(dt)

# Organize Data
y <- dt[,30]
x <- as.matrix(dt[,c(31,46)])

# Data:
data <- list(N=length(y), K=2, y=y, x=x, m=c(-2,2), prec=c(.20, .20), tau.a=1, tau.b=2, mbeta0=0, precbeta0=.01)
inits <- rep(list(list(beta0=0, beta=c(1,1), tau=1)),5)
param <- c("beta0", "beta", "sigma")

# Sample Posterior
library(rjags)
sim <- jags.model(file="Bayesian/lognormal.bug", data=data, inits=inits, n.chains=5, n.adapt=1000)


I don't know why I get the following error:

Compiling model graph
Resolving undeclared variables
Allocating nodes
Graph Size: 39212

Initializing model
Deleting model

Error in jags.model(file = "Bayesian/lognormal.bug", data = data, inits = inits,  :
Error in node y[1]
Observed node inconsistent with unobserved parents at initialization


-
Are you sure there is no zero or negative value in y ? –  Stéphane Laurent Oct 28 '12 at 11:42
Can you show us a small previe of your data (dt,y and x)?? –  A.R Oct 28 '12 at 14:35
Stéphane, there are lots of zeros in y. That's why I am using a lognormal. However, there are no negative values. –  user1172558 Oct 28 '12 at 15:37