3

首先,有人知道 WinBUGS 的开发人员指南吗?该网站充满了 Doodles 的详细示例和模型语言的文档,但我还没有找到任何关于如何解释陷阱窗口的信息。

其次,有没有人找到任何方法来简化检查/加载/编译/初始化/监控/更新周期?我的意思是,似乎没有任何方式可以说“不要费心重新检查模型或将任何设置恢复为默认值(!!!),只需继续从这些文件加载​​数据,从这些文件,并为每个文件生成一个新的尾声”。甚至标准的 Windows 快捷方式在这里也被取消了,迫使用户不断地点击并用相同的值一遍又一遍地填充相同的字段。这似乎是一个小问题,但是当您一个接一个地进行许多类似的分析时,它很快就会变老。

我正准备使用 TRON.EXE 向程序发送虚假的鼠标点击,但在走到那个极端之前,我希望有一些本机和更优雅的方式来自动执行重复的 WinBUGS 任务。

4

3 回答 3

2

嗯...这是正常的 WinBUGS :-) 不友好,显示的陷阱会吓到有经验的内核黑客.. :-) 我认为不存在一些陷阱指南。我的意思是,如果 WinBUGS 的创建者想要努力使用户更加友好,他们可能会首先让陷阱更易于理解,这样就不需要指南了。

我试图做类似的事情——即自定义 WinBUGS 行为。首先,您可以使用 R2WinBUGS 从 R 调用 WinBUGS。这样你就可以做很多自动化,但不是全部。例如,我想在 WinBUGS 中有类似进度信息的东西。问题是 WinBUGS UI 在更新周期中卡住了。R2WinBUGS 创建script.txt命令脚本并且有 command update (<big number of cycles>)。我在这里想要的是自定义这个 script.txt 以包含很多较小的update(..)命令而不是一个大命令。但是,问题是 R2WinBUGS 自己生成这个脚本,你不能改变它。

因此,自定义 WinBUGS 的方法可能是您创建自己的包装器来创建 script.txt 和其他文件。我相信您可以通过这种方式对 WinBUGS 进行更多自定义。

但是,我不确定 WinBUGS 是否值得。它的发展已经停止,虽然受到许多人的喜爱,但它仍然僵化。您可以尝试 JAGS 或 CppBugs,它们似乎更有希望的未来。

于 2012-07-10T12:16:11.520 回答
2

有关 R2WinBUGS 的包装器,它添加了许多功能以简化严重的 WinBUGS 使用,请参阅我的包 rube ( http://www.stat.cmu.edu/~hseltman/rube/ ),它还没有在 CRAN 上。

除其他外,它提供简单的英文错误消息,而不是在确定陷阱错误时将您的模型/数据/inits 传递给 WinBUGS。它还为您的模型/数据/初始化提供了非常有用的摘要,用于查找无法自动检测到的问题。当然,它不会捕获所有陷阱错误。

于 2013-05-30T15:00:51.620 回答
0

原来我在问题的第二部分没有足够的 RTFM。事实证明,WinBUGS 1.4 手册中题为“批处理模式:脚本”的部分列出了所有批处理命令。所有重要的 UI 功能都有一个批处理模式命令。在获得正确的论点方面只有一点点试错(例如over.relax('true'))。真正花了我一段时间才弄清楚的是,WinBUGS 似乎在某些 Windows 路径上有问题,但只要一切都在安装 WinBUGS 的目录的子目录中,它运行正常。

必须继续加载所有这些小文件仍然有点麻烦,但我编写了一个 R 脚本,它使用 BRugs 包中的函数来创建所有文件,以一致的模式命名它们,然后生成一个脚本,然后初始化模型并一次又一次地加载它们。

不过,我会暂时搁置这个问题,看看是否有人对我可以在哪里学习更好地使用陷阱有任何建议。

于 2012-07-13T23:49:47.903 回答