简体   繁体   中英

R2WinBUGS - how to reload the WinBUGS computation results to bugs object again

I have run a looong computation in WinBUGS (million iterations) using the R2WinBUGS package from within R:

bugs.object <- bugs(...)

but the R crashed. How do I reload the bugs.object into R again without running winbugs again? I tried this (I have 3 chains):

out <- read.bugs(paste("coda", 1:3, ".txt", sep = ""))

but the out data structure is completely diferent from the bugs object (as it is, it is unusable). I tried to convert it with as.bugs.array :

bugs.object <- as.bugs.array(out, model.file = "ttest.txt", n.iter = 1000000, n.burnin = 300000, n.thin = 2, program = "WinBUGS")

but it doesn't work. Please help. Thanks.

It is likely that you are reading a error message, where R ran out of memory to create the bugs.array object.

You can get round this problem by setting the codaPkg=T statement in the bugs function. This saves the CODA files in your specified working directory rather than creating the R2WinBUGS object (before R crashes). Then you can read the coda files back in using read.mcmc in the coda package, and if you really want, convert the mcmc object to a bugs.array .

This might not work if your MCMC is too big or you do not have enough memory for R.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM