我想在jags中创建一个临时变量,但它不能像在R
中那样工作for (cid in 1:CAMPAIGN_N) {
for (time in 1:DATE_N){
index <- time * CAMPAIGN_N + cid - 2
positives[index] ~ dbin( k[time]*ctr[cid], tries[index])
}
}
给出错误,因为index
变量只被定义一次。所以我不得不用以下丑陋的方式写它:
for (cid in 1:CAMPAIGN_N) {
for (time in 1:DATE_N){
positives[time * CAMPAIGN_N + cid - 2]
~ dbin( k[time]*ctr[cid], tries[time * CAMPAIGN_N + cid - 2])
}
}
有没有办法可以用jags创建临时变量?
答案 0 :(得分:1)
您需要让index
与time
和cid
不同。
index[time,cid] <- time * CAMPAIGN_N + cid - 2
positives[index[time,cid]] ~ dbin( k[time]*ctr[cid], tries[index[time,cid]])