55 lines
1.7 KiB
Plaintext
55 lines
1.7 KiB
Plaintext
# Alligators: multinomial - logistic regression
|
|
# http://www.openbugs.info/Examples/Aligators.html
|
|
model {
|
|
# PRIORS
|
|
alpha[1] <- 0; # zero contrast for baseline food
|
|
for (k in 2 : K) {
|
|
alpha[k] ~ dnorm(0, 0.00001) # vague priors
|
|
}
|
|
# Loop around lakes:
|
|
for (k in 1 : K){
|
|
beta[1, k] <- 0
|
|
} # corner-point contrast with first lake
|
|
for (i in 2 : I) {
|
|
beta[i, 1] <- 0 ; # zero contrast for baseline food
|
|
for (k in 2 : K){
|
|
beta[i, k] ~ dnorm(0, 0.00001) # vague priors
|
|
}
|
|
}
|
|
# Loop around sizes:
|
|
for (k in 1 : K){
|
|
gamma[1, k] <- 0 # corner-point contrast with first size
|
|
}
|
|
for (j in 2 : J) {
|
|
gamma[j, 1] <- 0 ; # zero contrast for baseline food
|
|
for ( k in 2 : K){
|
|
gamma[j, k] ~ dnorm(0, 0.00001) # vague priors
|
|
}
|
|
}
|
|
|
|
# LIKELIHOOD
|
|
for (i in 1 : I) { # loop around lakes
|
|
for (j in 1 : J) { # loop around sizes
|
|
|
|
# Fit standard Poisson regressions relative to baseline
|
|
lambda[i, j] ~ dflat() # vague priors
|
|
for (k in 1 : K) { # loop around foods
|
|
X[i, j, k] ~ dpois(mu[i, j, k])
|
|
log(mu[i, j, k]) <- lambda[i, j] + alpha[k] + beta[i, k] + gamma[j, k]
|
|
culmative.X[i, j, k] <- culmative(X[i, j, k], X[i, j, k])
|
|
}
|
|
}
|
|
}
|
|
|
|
# TRANSFORM OUTPUT TO ENABLE COMPARISON
|
|
# WITH AGRESTI'S RESULTS
|
|
for (k in 1 : K) { # loop around foods
|
|
for (i in 1 : I) { # loop around lakes
|
|
b[i, k] <- beta[i, k] - mean(beta[, k]); # sum to zero constraint
|
|
}
|
|
for (j in 1 : J) { # loop around sizes
|
|
g[j, k] <- gamma[j, k] - mean(gamma[, k]); # sum to zero constraint
|
|
}
|
|
}
|
|
}
|