首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >N个数据集的R2WinBUGS运行仿真研究

N个数据集的R2WinBUGS运行仿真研究
EN

Stack Overflow用户
提问于 2017-10-19 04:03:47
回答 1查看 167关注 0票数 0

我有一些问题,弄清楚如何运行一些模拟研究使用R2WinBUGS。其目的是模拟n个数据集(目标为1000,但从10开始),并将它们作为一个矩阵放入R2WinBUGS代码中,这样当它移植到WinBUGS时,它将运行n个数据集的估计值。以下是我目前所拥有的:

模式:

代码语言:javascript
复制
model{
      alpha0 ~ dnorm(66.6, 0.01)
      alpha1 ~ dnorm(0.3, 0.01)
      alpha2 ~ dnorm(100, 0.01)
      alpha3 ~ dnorm(0.2, 0.01)
      beta0 ~ dnorm(35, 0.01)
      beta1 ~ dnorm(80, 0.01)
      tau ~ dgamma(0.3,1)

    for(k in  1:Ndat) {
      y[k] ~ dnorm(mu[k], tau)
      mu[k] <- ((alpha0/(1 + exp(-alpha1*(28-beta0)))) + (alpha2/(1 + exp(-alpha3*(28-beta1)))))
    }
}

我使用的bug代码是:

代码语言:javascript
复制
grapedat.sim = bugs(data = list('Ndat' = Ndat, 'y' = p.y[,1]),inits,
                model.file="H:/R coding/R2WinBUGS/multsimt1.bug",
             parameters=c("alpha0","alpha1","alpha2","alpha3","beta0","beta1","tau"),
                n.chains=1,n.iter=8000,n.sim = 6000, 
n.burnin=2000,n.thin=1,
                bugs.directory="H:/WinBUGS14",
                codaPkg=FALSE,
                debug = T)

其中Ndat是数据集的数目,p.y.是一个13xn矩阵,其inits是:

代码语言:javascript
复制
inits <- function(){
  list(alpha0=70, alpha1=0.4, tau=0.15, alpha2=105, alpha3=0.25,beta0 = 
    40, beta1 = 85)
  }

有什么帮助吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-27 10:43:11

理论上,您可以在单个BUGS模型中使用第二个(外部)循环,然后将y和mu作为矩阵索引,并将系数作为向量(例如(未经测试的)):

代码语言:javascript
复制
model{
    for(d in 1:n){
      alpha0[d] ~ dnorm(66.6, 0.01)
      alpha1[d] ~ dnorm(0.3, 0.01)
      alpha2[d] ~ dnorm(100, 0.01)
      alpha3[d] ~ dnorm(0.2, 0.01)
      beta0[d] ~ dnorm(35, 0.01)
      beta1[d] ~ dnorm(80, 0.01)
      tau[d] ~ dgamma(0.3,1)

      for(k in  1:Ndat) {
        y[k,d] ~ dnorm(mu[k,d], tau[d])
        mu[k,d] <- ((alpha0[d]/(1 + exp(-alpha1[d]*(28-beta0[d])))) +
                    (alpha2[d]/(1 + exp(-alpha3[d]*(28-beta1[d])))))
      }
    }
}

这对于n=10来说是可行的,但是对于n=1000来说会非常困难,所以通常不是一个很好的解决问题的方法。相反,我将独立地运行每个数据集/模型,在R中使用循环,如果您愿意使用JAGS而不是WinBUGS,那么您可以在runjags包中查看半自动的解决方案--即阅读本文的2.9节:https://www.jstatsoft.org/article/view/v071i09

哑光

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46822663

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档