Ошибка в update.jags (model, n.iter, ...): Ошибка в узле sd [1] Неверные родительские значения - PullRequest
0 голосов
/ 10 февраля 2020

У меня ошибка в узле sd [1], он говорит о недопустимых родительских значениях в компиляторе. Я работаю с гауссовой моделью для данных "Галактик" из пакета "МАССА" р.

library(rjags)
library(MASS)
library(mcsm)

data("galaxies")
summary(galaxies)

y = galaxies
ngroups = 2
jags_data = list(y=y, n=length(y), ngroups=ngroups)

gaussmodel = "
model {
  for (i in 1:n) {
     y[i] ~ dnorm(mu[z[i]], tau[z[i]]) 
     z[i] ~ dcat(group_probs)
}
group_probs ~ ddirich(d)       
  for (j in 1:ngroups) {
  mu_raw[j] ~ dnorm(0, 1E-6)
  tau[j] ~ dgamma(0.001, 0.001)
  sd[j] = pow(tau[j], -0.5) 
  d[j] = 2
}
mu = sort(mu_raw)
}
"

model = jags.model(textConnection(gaussmodel), data=jags_data,
                   n.chains=4)
update(model,n.iter=1E4)
samples = coda.samples(model=model, variable.names=c("mu", "sd", "group_probs"), n.iter=1E4, thin=5) 
...