2

我需要从 Excel 将一些数据加载到 WinBugs 中,由于某种原因,Winbugs 无法识别它。我尝试了很多事情(所有这些都在下面列出),但这些都不起作用。

  1. 我试图从 Excel 复制并将“选择性粘贴”作为“纯文本”复制到 WinBugs 中。我[]在每个变量之后添加,甚至'END'在最后添加。错误消息如下:

    LoadNumeric Data抱歉,模块中的程序出了点问题BugRectData

  2. 我复制并粘贴到记事本中,[]在每个变量之后添加,甚至'END'在最后添加,然后删除行之间的所有空格,每个数据之间只有一个空格。当我将它拖到 Winbugs 中时,它分散在行之间的双倍空间中,数据之间的间隙很大,并且出现错误消息(尝试加载数据时):

    LoadNumeric Data抱歉,模块中的程序出了点问题BugRectData

  3. 我做的最后一件事是将 .txt 文件打开到 Winbugs 中,它变得一团糟,当我尝试加载数据时,它反而突出显示了一些NA2.0应该是的数据,NA 2.0并说它“期望一个数字或 NA 或结尾”。在纠正了这些错误之后,数据似乎很好,直到它说的最后,它'END'说的是同样的事情,只是突出显示EEND.

如果有人能提供任何见解,我将不胜感激。

4

2 回答 2

2

如果您已包含数据集的一部分,则回答会更容易,因为您已将其包含在 Winbugs 复合文档中。如 Winbugs 手册 ( http://www.mrc-bsu.cam.ac.uk/bugs/winbugs/manual14.pdf ) 中所述,数据可以 S-plus 格式或矩形格式输入。矩形格式具有以下形式:

Y[] x[]
5 4.1
3 2.1
4 3.5
END 

S-plus 格式(例如):

list(Y=c(5,3,4),x=c(4.1,2.1,3.5))

您是否专门尝试过这些并使用完全正确的语法?在矩形格式中,数组的长度必须相等,并且都必须有一个标题。

我不会直接从excel复制/粘贴到winbugs,因为会出现各种奇怪的格式。尝试先将数据复制到 .txt 或另存为制表符分隔的 .csv。在将文件插入 Winbugs 之前检查文件是否正常,例如使用“特殊粘贴”和纯文本。

于 2013-05-31T09:10:41.353 回答
1
  1. 来自:在这里下载文件“writeDatafileR.txt”。详情请看链接

  2. 写在R中: source("writeDatafileR.txt")

  3. 鉴于 df 是一个 data.frame,请在 R 命令提示符下键入: writeDatafileR(df," df.txt")

  4. 这将创建一个文件“df.txt”,其中包含我们可以复制并粘贴到我们的 Winbugs 代码中的数据。

于 2021-03-11T12:45:59.890 回答