我有一个关于在JAGS和BUGS中运行模型的详细信息的快速问题。
假设我使用n.burnin=5000
,n.iter=5000
和thin=2
运行模型。这是否意味着该计划将:
如果我将这些模拟保存为CODA
个对象,是全部保存10,000个还是只减少5,000个?我只是想了解使用哪组迭代来制作ACF图?
答案 0 :(得分:2)
使用JAGS n.burnin=5000, n.iter=5000 and thin=2
,意味着你什么都不做。你运行5000,丢弃这5000个中的前5000个,然后只保留链的剩余值的一半(保留1个值并丢弃下一个......)。
例如使用n.burnin=2000, n.iter=7000, thin=50, n.chains=5
:所以你有(7000-2000)/ 50 * 5 = 500个值。
答案 1 :(得分:0)
您能更具体地说明您正在谈论的软件吗?看起来你在引用R2WinBUGS包中的函数bugs()的参数(除了参数被称为n.thin而不是瘦)。看看帮助(错误)它只是说n.burnin是“开始时丢弃的迭代次数”。这并没有具体回答你的问题,但是查看该软件包中bugs.script()的来源告诉我,它会运行5000次迭代,正如你所怀疑的那样。您可以向该软件包的维护者发送建议,以澄清其文档。
在您的示例中,bugs()将在老化后再运行0次迭代。这里的文档更清晰 - n.iter是迭代的总数,包括老化。
对于第二个问题,WinBUGS(以及任何调用WinBUGS或OpenBUGS的软件)的CODA输出仅包含稀疏样本。