我正在通过R2WinBUGS使用WinBUGS做一个简单的回归模型。
结果看起来还可以,但是WinBUGS一直显示此行,但我不知道为什么:

command #Bugs:gen.inits cannot be executed (is greyed out)


有人有主意吗?
谢谢!

调用WinBUGS的R代码:

# Prepare data
ni = 12 #Nb of tagging year
prL <- c(0.13,0.23,0.28,0.22,0.29,0.25,0.31,0.32,0.32,0.40,0.33,0.35) #Proportion of tag lost
input.tlr <- list(ni=ni,prL=prL)

# Generates intial values for two chains
nbchains = 2
init1 <- list(beta1=runif(1,-1,1),beta2=runif(1,-1,1),tauG=rgamma(1,1,1))
init2 <- list(beta1=runif(1,-1,1),beta2=runif(1,-1,1),tauG=rgamma(1,1,1))
inits <- list(init1,init2)

# Call WinBUGS
parameters <- c("gamma","beta1","beta2","tauG")
out.tlr <- bugs(data=input.tlr, inits=inits, parameters=parameters, "tlr.txt", n.chains=2, n.iter=20000, n.burnin=5000,n.thin=1,debug=TRUE)


WinBUGS代码为:

model {
###### Tag lost rate model ######
for (i in 1:ni) {
  prL[i] ~ dnorm(gamma[i],tauG)
  gamma[i] <- beta1 * log(i-0.5) + beta2
  }
### Priors
    beta1 ~ dnorm(0,0.001)
    beta2 ~ dnorm(0,0.001)
    tauG ~ dgamma(0.001,0.001)
} # End model


WinBUGS的输出为:

display(log)
check(C:/Users/AppData/Local/Temp/RtmpG8dxh1/tlr.txt)
model is syntactically correct
data(C:/Users/alebris/AppData/Local/Temp/RtmpG8dxh1/data.txt)
data loaded
compile(2)
model compiled
inits(1,C:/Users/AppData/Local/Temp/RtmpG8dxh1/inits1.txt)
chain initialized but other chain(s) contain uninitialized variables
inits(2,C:/Users/AppData/Local/Temp/RtmpG8dxh1/inits2.txt)
model is initialized
gen.inits()
command #Bugs:gen.inits cannot be executed (is greyed out)
thin.updater(1)
update(5000)
set(gamma)
set(beta1)
set(beta2)
set(tauG)
set(deviance)
dic.set()
update(15000)
coda(*,C:/Users/AppData/Local/Temp/RtmpG8dxh1/coda)
stats(*)

最佳答案

我认为这仅仅是因为您自己提供了inits。 winBUGS命令gen.inits用于自动生成init,但是如果您手动提供init,它将“灰显”。因此,我认为无需担心。

关于r - 这似乎工作正常,但一直显示“命令#Bugs:gen.inits无法执行(变灰)”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29175619/

10-12 21:16