gpt4 book ai didi

r - 来自 rjags 的语法错误

转载 作者:行者123 更新时间:2023-12-04 16:47:40 25 4
gpt4 key购买 nike

我第一次尝试用 rjags 拟合分层模型;它在纸上看起来很简单,但我得到一个“ 解析模型文件时出错:第 5 行靠近“[”“的语法错误,我完全无法解释。

你能帮我告诉我我做错了什么吗?

data = list('P.hat'=c(0.0032, 0.0045, 0.077), 'R'=c(34580, 37932, 46724), 'N'=c(10028321, 15674923, 21426662), 's.over.rootn'=c(0.02, 0.006, 0.017), 'n'=1, 'tmax'=3)

cat('model{
## likelihoods ##
for(i in 1:n){
for(j in 1:tmax){
P.hat[i,j] ~ dnorm(pi[j], (1/pow(s.over.rootn,2))[j])
R[i,j] ~ dbin(theta[j], N[j])
}}
## daterministic relations ##
gam <- m*vs+(1-m)*va
for(j in 1:tmax){
theta[j] <- (pi[j]*beta*gam)/(gam*dt+(1-gam)*du)
}
## priors ##
for(j in 1:tmax){
pi[j] ~ dbeta(1, 1)
}
beta ~ dbeta(1, 1)
m ~ dbeta(1, 1)
vs ~ dbeta(1, 1)
va ~ dbeta(1, 1)
dt ~ dnorm(0.3, 2)I(0,5)
du ~ dnorm(1.25, 2)I(0,5)
}',
file='model1.bug')

## data & initial values
inits1 <- list('pi'=rep(0.5,data$tmax),'beta'=0.5, 'm'=0.5,'vs'=0.5,'va'=0.5,'dt'=1,'du'=1)
jags_mod <- jags.model('model1.bug', data=data, inits=inits1, n.chains=1, n.adapt=5000)}

最佳答案

你的第五行代码是这样的:

 P.hat[i,j]  ~  dnorm(pi[j], (1/pow(s.over.rootn,2))[j])   

我认为它需要更改为这个才能正确索引 s.over.rootn :
 P.hat[i,j]  ~  dnorm(pi[j], (1/pow(s.over.rootn[j],2)))   

关于r - 来自 rjags 的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37167890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com