MCMCpack抑制MCMCmetrop1R功能输出

时间:2015-11-27 04:14:48

标签: r mcmc

MCMCmetrop1R功能可以选择使用选项verbose=FALSEverbose=0来抑制其输出到屏幕。但是,当函数完成其操作时,这并不会停止报告以下内容的函数。 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@ 大都市的接受率为0.15862 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@

我尝试在MEMCmetrop1R函数周围使用invisible()函数,但这没有任何区别。 是否有其他建议停止报告接受率的功能?

1 个答案:

答案 0 :(得分:0)

我今天遇到同样的问题,这是我的解决方案:您可以使用capture.output包中的captureOutput()R.utils。据说后者更快(见http://www.jottr.org/2014/05/captureOutput.html)。

R.utils::captureOutput(expr={
  post.sample <- MCMCmetrop1R(loglik, theta.init = c(0, 1, 1), ...)
})

请注意,这也会影响所有其他输出。因此,如果您设置verbose > 0,则不会显示此内容。