Skip to content

Instantly share code, notes, and snippets.

@amackey
Created January 25, 2011 19:25
Show Gist options
  • Save amackey/795467 to your computer and use it in GitHub Desktop.
Save amackey/795467 to your computer and use it in GitHub Desktop.
model {
# fracs[1:10] ~ ddirch(alpha[1:10])
# for (k in 1:10) {
# fracs[k] <- delta[k]/sum(delta[1:10]);
# delta[k] ~ dgamma(alpha[k], 1)
# }
a2[1] <- sum(alpha[2:10]);
fracs[1] ~ dbeta(alpha[1], a2[1]);
for (j in 2:9) {
a2[j] <- sum(alpha[(j+1):10]);
psi[j] ~ dbeta(alpha[j], a2[j]);
fracs[j] <- psi[j] * (1 - sum(fracs[1:(j-1)]));
}
fracs[10] <- 1 - sum(fracs[1:9]);
for (i in 1:N) {
mu[i] <- inprod(fracs[1:10], ratio[i,1:10]);
snpA[i] ~ dbin(mu[i], total[i]);
}
}
model {
# fracs[1:10] ~ ddirch(alpha[1:10])
# for (k in 1:10) {
# fracs[k] <- delta[k]/sum(delta[1:10]);
# delta[k] ~ dgamma(alpha[k], 1)
# }
a2[1] <- sum(alpha[2:10]);
fracs[1] ~ dbeta(alpha[1], a2[1]);
for (j in 2:9) {
a2[j] <- sum(alpha[(j+1):10]);
psi[j] ~ dbeta(alpha[j], a2[j]);
fracs[j] <- psi[j] * (1 - sum(fracs[1:(j-1)]));
}
fracs[10] <- 1 - sum(fracs[1:9]);
for (i in 1:N) {
for (j in 1:10) {
gtA[i,j] ~ dcat(prob[i,j,1:3])
ratio[i,j] <- encoding[gtA[i,j]];
}
# mu[i] <- inprod(fracs[1:10], ratio[i,1:10]);
mu[i] <- fracs[1]*ratio[i,1] + fracs[2]*ratio[i,2] + ...;
snpA[i] ~ dbin(mu[i], total[i]);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment