我的winbugs代码如下:
model
{
for ( i in 1:N){ logit(p[i])<- alpha+ beta*x[i]
y[i]~ dbin(p[i], n[i])
}
alpha~ dnorm(0,0.000001)
beta~ dnorm(0,0.000001)
pbeta<-step(beta-0)
}
list(N=20,
n=c(6, 7, 6, 8, 8, 5, 6, 6, 5, 8, 6, 5, 7, 6, 6, 7,6 , 6, 7, 3),
y=c(0,2,6,2,2,1,3,6,2,3,4,3,7,0,1,0,0,1,1,2),
x=c(25.7, 32.3, 49.6, 35.2, 35.9, 33.2, 39.8, 51.3, 32.9, 40.9,
43.6, 42.5, 50.4, 36.5, 34.1, 31.3, 28.3, 36.5, 37.4, 40.6))
list(alpha=0.1, beta=0.2)
运行此代码后,我得到了 alpha 和 beta 的后验分布。现在我想看看P(beta>0)
。他们说我可以使用pbeta<- step(beta)
(pbeta 被视为虚拟变量: 0 ifbeta=0
和 1 if beta>0
)。但是当我把它放在模型中时,它给了我一个错误通知。