[R-sig-ME] mixture DIC model

Mohammadreza Kordbagheri mohammadreza366 at yahoo.com
Fri Apr 14 09:40:28 CEST 2017


hello 
my name is alireza kordbagheri of shahid beheshti university tehran.

i have two question of you:

can you help me for my question:
one question: i read your article tittle:

i dont know, how draw heatmap ANOVA GAMMA.

two question:i writing code model with JAGS softwar.
i used of function GB2.

I have problem, what DIC estimation?
This article is open access at

https://projecteuclid.org/euclid.ba/1340370933.

library(rjags)

cat(file = "model.txt",
"
data {
  C <- 100
  for (i in 1:N) {
    zeros[i] <- 0
  }
}
model {
  for (i in 1:N) {
    zeros[i] ~ dpois(loglik[i] + C)
    loglik[i] <- -log(pi[1] * l1[i] + pi[2] * l2[i])
    l1[i] <- abs(a[1]) * pow(y[i], a[1] * p[1] - 1) / (pow(b1[i], a[1] * p[1]) * exp(loggam(p[1]) + loggam(q[1]) - loggam(p[1] + q[1])) * pow(1 + pow(y[i] / b1[i], a[1]), p[1] + q[1]))
    l2[i] <- abs(a[2]) * pow(y[i], a[2] * p[2] - 1) / (pow(b2[i], a[2] * p[2]) * exp(loggam(p[2]) + loggam(q[2]) - loggam(p[2] + q[2])) * pow(1 + pow(y[i] / b2[i], a[2]), p[2] + q[2]))
    b1[i]<- exp(mu[1] + alpha[1] * f[i] + beta1[1] * col1[i] + beta2[1] * col2[i] + beta3[1] * col3[i] + loggam(p[1]) + loggam(q[1]) - loggam(p[1] + 1 / a[1]) - loggam(q[1] - 1 / a[1]))
    b2[i]<- exp(mu[2] + alpha[2] * f[i] + beta1[2] * col1[i] + beta2[2] * col2[i] + beta3[2] * col3[i] + loggam(p[2]) + loggam(q[2]) - loggam(p[2] + 1 / a[2]) - loggam(q[2] - 1 / a[2]))
  }
  pi[1] ~ dunif(0, 1)
  pi[2] <- 1 - pi[1]
  for(k in 1:2) {
    mu[k] ~ dnorm(0, .01)
    alpha[k] ~ dnorm(0, .01)
    beta1[k] ~ dnorm(0, .01)
    beta2[k] ~ dnorm(0, .01)
    beta3[k] ~ dnorm(0, .01)
    a[k] ~ dnorm(0, .01)
    p[k] ~ dgamma(.01, .01)I(0, 90)
    q[k] ~ dgamma(.01, .001)I(1, 3.5)
  }
}
")

data <- matrix(c(
3323,  5, 1, 0, 0,
8332,  8, 0, 1, 1,
9572,  5, 1, 0, 0,
10172, 10, 1, 0, 1,
7631,  2, 1, 0, 0,
3855,  9, 0, 1, 1,
3252,  6, 1, 0, 1,
4433,  8, 0, 1, 1,
2188,  7, 1, 0, 0,
  333,  4, 1, 0, 0,
  199,  3, 0, 1, 1,
  692,  9, 0, 1, 0,
  311, 12, 1, 0, 0,
0.01,  5, 1, 0, 1,
  405,  6, 0, 1, 0,
  293,  6, 0, 1, 0,
  76,  7, 1, 0, 1,
  14,  9, 1, 0, 0,
3785, 21, 0, 1, 1,
10342, 11, 0, 1, 1), ncol = 5, byrow = TRUE)

bugs.data <- list(N = nrow(data),
                  y = data[, 1],
                  f = data[, 2],
                  col1 = data[, 3],
                  col2 = data[, 4],
                  col3 = data[, 5])
set.seed(123)
inits <- lapply(1:3, function(i) {
    list(mu = rnorm(2, 0, 1),
        alpha = rnorm(2, 0, 1),
        beta1 = rnorm(2, 0, 1),
        beta2 = rnorm(2, 0, 1),
        beta3 = rnorm(2, 0, 1),
        pi = c(runif(1, 0, 1), NA),
        a = runif(2, -4, -2),
        p = runif(2, 1, 2),
        q = runif(2, 1, 2),
        .RNG.name = "base::Mersenne-Twister",
        .RNG.seed = i)
    })
pars <- c("mu", "alpha", "beta1", "beta2", "beta3", "pi",
          "a", "p", "q")
model <- jags.model("model.txt",
                    data = bugs.data,
                    inits = inits,
                    n.chains = 3,
                    n.adapt = 1000)
update(model, 3000)
samp <- coda.samples(model,
                    variable.names = pars,
                    n.iter = 4000, thin = 4)
gelman.diag(samp, multivariate = FALSE)
traceplot(samp[, 15]) # pi[1]
traceplot(samp[, 16]) # pi[2]

can you help me.

Regards,
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: data.txt
URL: <https://stat.ethz.ch/pipermail/r-sig-mixed-models/attachments/20170414/b20eceb4/attachment-0001.txt>


More information about the R-sig-mixed-models mailing list