如何解决如何使用 runjags 遍历数据子集
我正在尝试使用基于我在 stackoverflow Loop through (subsets) using jags 上找到的示例的 runjags 遍历数据子集。
我的原始数据集有 2000 多个观测值,我必须根据具有 15 个级别的因子变量对其进行子集化。而不是一个接一个地运行分析,而是试图循环遍历它。
library(runjags)
###
cat("model{for(i in 1:N){
attack[i] ~ dnorm(mu[i],tau)
mu[i] <- alpha + beta*agent[i]
}
alpha ~ dnorm(0,1.0e-6)
beta ~ dnorm(0,1.0e-6
tau ~ dgamma(0.001,0.001}",file="mod1.txt")
data1 <-
data.frame(attack=rnorm(18,1),agent=rnorm(18,5,18),cplace=c("r1","r1","r2","r3","r4","r1"))
sub_dat <- split(data1[,c(1,2,3)],as.factor(data1[,3)]$cplace))
#######
model.output <- lapply(sub_dat,function(x) {
N <- nrow(x)
attack <- x$attack
agent <- x$agent
data <- list("N","attack","agent")
parameters <- c("alpha","beta")
set.seed(3456)
samples <- autorun.jags(model="mod1.txt",monitor=c("alpha","beta"),data=data,n.chains=3,startburnin = 5000,startsample=5000,adapt=1000,psrf.target=1.02)
return(samples)
})
运行上述后,我收到错误消息“错误:指定为数据参数的列表不是完整命名的列表”
请问我该如何解决这个问题。谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。