Orange Trees: Non-linear growth curve
This dataset was originally presented by Draper and Smith (1981) and reanalysed by Lindstrom and Bates (1990). The data Y
ij consist of trunk circumference measurements recorded at time x
j, j=1,...,7 for each of i = 1,..., 5 orange trees. We consider a logistic growth curve as follows:
Y
ij ~ Normal(
ηij,
τc)
ηij =
φi1 _______________
1 +
φi2 exp(
φi3 x
j )
θ i1 = log(
φi1)
θi2 = log(
φi2 + 1)
θi3 = log(
-φi3)
The BUGS code is as follows
model {
for (i in 1:K) {
for (j in 1:n) {
Y[i, j] ~ dnorm(eta[i, j], tauC)
eta[i, j] <- phi[i, 1] / (1 + phi[i, 2] * exp(phi[i, 3] * x[j]))
}
phi[i, 1] <- exp(theta[i, 1])
phi[i, 2] <- exp(theta[i, 2]) - 1
phi[i, 3] <- -exp(theta[i, 3])
for (k in 1:3) {
theta[i, k] ~ dnorm(mu[k], tau[k])
}
}
tauC ~ dgamma(1.0E-3, 1.0E-3)
sigma.C <- 1 / sqrt(tauC)
for (k in 1:3) {
mu[k] ~ dnorm(0, 1.0E-4)
tau[k] ~ dgamma(1.0E-3, 1.0E-3)
sigma[k] <- 1 / sqrt(tau[k])
}
}
Data
list(n = 7, K = 5, x = c(118.00, 484.00, 664.00, 1004.00, 1231.00, 1372.00, 1582.00),
Y = structure(
.Data = c(30.00, 58.00, 87.00, 115.00, 120.00, 142.00, 145.00,
33.00, 69.00, 111.00, 156.00, 172.00, 203.00, 203.00,
30.00, 51.00, 75.00, 108.00, 115.00, 139.00, 140.00,
32.00, 62.00, 112.00, 167.00, 179.00, 209.00, 214.00,
30.00, 49.00, 81.00, 125.00, 142.00, 174.00, 177.00),
.Dim = c(5, 7)))
Inits for chain 1
list(theta = structure(
.Data = c(5, 2, -6,
5, 2, -6,
5, 2, -6,
5, 2, -6,
5, 2, -6),
.Dim = c(5, 3)),
mu = c(5, 2, -6), tau = c(20, 20, 20), tauC = 20)
Inits for chain 2
list(theta = structure(
.Data = c(3.0, 1.0, -1.0,
3.0, 1.0, -1.0,
3.0, 1.0, -1.0,
3.0, 1.0, -1.0,
3.0, 1.0, -1.0),
.Dim = c(5, 3)),
mu = c(3.0, 1.0, -1.0), tau = c(2, 2, 2), tauC = 2)
Results