零膨胀负二项非整数误差

时间:2015-08-16 16:33:25

标签: r winbugs

我使用R2Winbug在WinBugs中使用ZINB,这是WinBugs模型代码:

Model{
  for(i in 1:n){
    injections[i] ~ dnegbin(p[i],r)
    p[i] <- r/r+ramda[i]*(1-u[i])
    u[i] ~ dbern(p0[i])
    logit(p0[i])  <- alpha0 + alpha1*hiv[i] + alpha2*parteners[i] + 
                     alpha3*married[i] + alpha4*divorced[i] + alpha5*mage[i]
    log(ramda[i]) <- beta0 + beta1*hiv[i] + beta2*parteners[i] + 
                     beta3*married[i] + beta4*divorced[i] + beta5*mage[i]
  }
  # priors for missing covariates
  for(i in 1:n){
    parteners[i] ~ dpois(mu)
    hiv[i] ~ dbin(q,1)
  }

  # priors
  q ~ dunif(0.0,1.0)
  r <- exp(logalpha)
  logalpha ~ dnorm(0,1.0E-8)
  beta0 ~ dnorm(0,1.0E-8); beta1 ~ dnorm(0,1.0E-8) 
  beta2 ~ dnorm(0,1.0E-8); beta3 ~ dnorm(0,1.0E-8)
  beta4 ~ dnorm(0,1.0E-8); beta5 ~ dnorm(0,1.0E-8) 
  alpha0 ~ dnorm(0,1.0E-8); alpha1 ~ dnorm(0,1.0E-8); alpha2 ~ dnorm(0,1.0E-8)
  alpha3 ~ dnorm(0,1.0E-8); alpha4 ~ dnorm(0,1.0E-8); alpha5 ~ dnorm(0,1.0E-8)
  mu ~ dgamma(0.01, 0.01)
}

现在在调用bugs函数之后,模型被认为是正确的,数据也被正确加载,但是当给出首字母时,它表示二项式hiv [16]的值必须是整数!我该如何纠正这个问题?

0 个答案:

没有答案