在“ The Bugs Book: A practical introduction to Bayesian Analysis”中,我找到了一个大家可能都知道的简单示例; “有偏见的硬币”(p95):
r <- 15; n <- 20 # data
r ~ dbin (p,n) # likelihood
p <- theta[pick]
pick ~ dcat(q[]) # 2 if biased, 1 otherwise
q[1] <- 0.9 # prior probability of coin unbiased
q[2] <- 0.1 # prior probability of coin biased
theta[1] <- 0.5 # effect when unbiased
theta[2] ~ dunif(0,1) # effect when biased
biased <- pick-1
我很难将其应用于我自己的示例。 在我的案例中,“ 成功的概率”是响应变量,它有条件地依赖于不同的协变量(而后者又有条件地依赖于其他协变量)。在这里您可以看到图形结构:bayesian graphical network。 我的目的是检验以下假设:
P(成功| X1 = 1,X2 = 0)> P(成功| X1 = 0,X2 = 1)或H1更有可能 比H2
X1 和 X2 是图形结构中的两个协变量。在开始时,它们的可能性相同:先验概率 p(H1)和 p(H2) = 0.5或
q[1] and q[2] = 0.5
现在,我的问题。我不确定如何实现本书中提出的方法。在我的情况下,应如何实现theta,即 H1 和 H2 对成功的影响(请参见下面的代码)?以及如何使用 theta [选择] 选项更改 H1 和 H2 的 p 的值(在我的案例中, p = z [i] 是协变量的逻辑回归)。
或者这不是做到这一点的方法吗?我应该算一下 P(Success | X1 = 1,X2 = 0)和 P(Success | X1 = 0,X2 = 1)发生的次数(偶然性)表格)?
model <- function(){
# likelihoods
for (i in 1:Nr){
Success[i] ~ dbern(z[i])
logit(z[i]) <- alpha[1] + alpha[2]*RT[i] + alpha[3]*Zaltrap[i]+ alpha[4]*stadium[i]
stadium[i] ~ dgamma(gamma1[i],0.5)
gamma1[i] <- beta1[1]+ beta1[2]*WHO[i] + beta1[3]*totaltum[i] + beta1[4]*N[i] + beta1[5]*T[i] # Latent variable
Zaltrap[i] ~ dbern(gamma2[i])
logit(gamma2[i])<- beta2[1]+ beta2[2]*beta2[3][i] + beta2[3]*Folfox[i]
Folfiri[i] ~ dbern(tau1[i])
logit(tau1[i]) <- delta1[1]+ delta1[2]*XX[i] + delta1[3]*BC[i] + delta1[4]*Erbitux[i] + delta1[5]*Vectibix[i] # Latent variable
Folfox[i] ~ dbern(tau2[i])
logit(tau2[i]) <- delta2[1]+ delta2[2]*XA[i] + delta2[3]*BC[i] + delta2[4]*Erbitux[i] + delta2[5]*Vectibix[i] # Latent variable
}
# priors
for (i in 1:4) { alpha[i] ~dnorm(0.001,0.0001)}
for (i in 1:5) { beta1[i] ~dgamma(1,5)}
for (i in 1:3) { beta2[i] ~dnorm(0.001,0.0001)}
for (i in 1:5) { delta1[i] ~dgamma(1,5)}
for (i in 1:5) { delta2[i] ~dgamma(1,5)}
}