我正在嘗試使用BUGS編寫dirichlet-multinomial模型。 基本上我有18個地區和3個類別每個地區。例如, 區域1:0.50屬於低,0.30屬於中,0.20屬於高。這樣的例子不勝枚舉,以區域18當然也有不同proportions.The只有我的代碼是這樣Dirichlet-Multinomial WinBUGS代碼
`model {
for (i in 1:N) {
x[1:3] ~ dmulti(p[],n[i])
p[1:3] ~ ddirch(alpha[])
}
for (k in 1:3) {
alpha[k] <- 1
}
}
DATA list(n=c(38483, 2259, 1900),x=c(29256.42719, 1857.431404, 1548.007808, 29256.42719, 1857.431404, 1548.007808, 29256.42719, 1857.431404, 1548.007808), N=3)`
我把它縮短爲3個區域第一隻是舉例。它點擊'gen inits'後顯示'Dirichlet36'。請幫我編碼。
這是不明確的 - 如果x是多項式,它們應該是整數。此外,您提供的代碼不會重現您所述的錯誤。看起來x和p需要是矩陣,例如x [i,1:3],p [i,1:3],如果x應該是一個矩陣,它需要在數據中定義爲類似結構(.Data = ...,.Dim = C()) –