大虾们,我现有一模型需要应用winbugs编程,难住小弟了,特此请求高人指点。模型以及小弟编的部分程序如附件。谢谢
model{
c<-10
for(i in 1:n){zeros<-0
zeros~dpois(zeros.mean)
zeros.mean<--log(l)+c
l<-alpha*beta*(pow(y,(beta-1)))*(exp(-alpha*((pow(y,beta)-(pow(t,beta))))))}
for(j in 2:n){log(beta[j])<-log(beta[j-1])+(eta[j])
eta[j]~dnorm(0,lamda)}
s<-sqrt(1/lamda)
lamda~dgamma(1,0.5)
alpha~dgamma(1,0.5)
beta[1]~dlnorm(0,0.1)
}
该程序难在lamda应该有两个值,我这里的程序只给出了一个。具体描述如下:如果认为y[i]为变点,则z[i]=1,lamda=0.005*dgamma(1,0.5),否则为z=0,lamda=dgamma(1,0.5).Z服从贝努力分布,p又是参数beta的函数。这样,程序中就出现了循环和选择了,困住小弟了,请高手指点。该模型的详细描述见PDF文件。模型原理很简单,很容易看懂。谢谢
附件列表