R2WinBUGS - как заново загрузить результаты вычислений WinBUGS в объект ошибок - PullRequest
3 голосов
/ 06 сентября 2011

Я выполнил вычисления в Looong в WinBUGS (миллион итераций), используя пакет R2WinBUGS из R:

bugs.object <- bugs(...)

но R разбился. Как мне снова загрузить объект bugs.object в R без повторного запуска winbugs? Я попробовал это (у меня 3 цепочки):

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

, но структура данных out полностью отличается от объекта ошибок (поскольку он непригоден для использования). Я пытался преобразовать это с as.bugs.array:

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

но это не работает. Пожалуйста помоги. Спасибо.

1 Ответ

2 голосов
/ 04 июня 2012

Скорее всего, вы читаете сообщение об ошибке, где R не хватило памяти для создания объекта bugs.array.

Вы можете обойти эту проблему, установив оператор codaPkg=T в функции bugs. Это сохраняет файлы CODA в указанном вами рабочем каталоге, а не создает объект R2WinBUGS (до сбоя R). Затем вы можете прочитать файлы coda обратно, используя read.mcmc в пакете coda, и, если вы действительно хотите, преобразовать объект mcmc в bugs.array.

Это может не работать, если ваш MCMC слишком большой или у вас недостаточно памяти для R.

...