在R中保存Jags / Winbugs输出

时间:2013-03-04 12:08:20

标签: r output winbugs jags

我在R中运行Jags / Winbugs,它工作正常,但我无法将输出保存到文本或csv文件(要么可以工作)

TEST.sim<- jags(data=jags.data, 
                parameters.to.save=jags.params, 
                n.iter=200000,jags.seed=123, 
                model.file="~/Documents/ARRModel.txt")

我需要的是一种保存输入时出现的输出的方法:

print(TEST.sim)

当我尝试write.table时,会出现以下错误:     不能将类“错误”强制转换为data.frame

1 个答案:

答案 0 :(得分:2)

如果您使用库R2jags和函数jags(),则函数print()会生成存储在列表元素BUGSoutput和子列表summary中的统计信息表。您可以直接访问这些数据并将其存储为其他对象(或直接在函数write.table()中使用),然后写入文本文件。

jag.sum<-TEST.sim$BUGSoutput$summary
jag.sum

                mean         sd        2.5%         25%         50%          75%        97.5%     Rhat n.eff
alpha     19.6399640 1.22982919  17.1888046  18.8401629  19.6391880  20.45108889  22.03860486 1.001312  4100
beta1     -0.1063905 0.01755548  -0.1409861  -0.1180097  -0.1064871  -0.09469226  -0.07198614 1.001028 18000
beta2     -0.1857631 0.03667742  -0.2573464  -0.2103279  -0.1860142  -0.16155874  -0.11304929 1.001138  7700
deviance 192.6742580 3.02780455 188.9038177 190.4371154 192.0046398 194.13875526 200.28772929 1.001252  4800

write.table(x=jag.sum,file="out.txt",sep="\t")