如何从 Excel 或记事本(以 .txt 结尾的文档)将数据加载到 Win Bugs 中?

Posted

技术标签:

【中文标题】如何从 Excel 或记事本(以 .txt 结尾的文档)将数据加载到 Win Bugs 中?【英文标题】:How do I load data into Win Bugs from Excel or from Notepad (doc ending with .txt)? 【发布时间】:2013-04-28 17:14:08 【问题描述】:

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

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

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

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

    抱歉,模块 BugRectData 中的过程 LoadNumeric Data 出现问题

    我做的最后一件事是将 .txt 文件打开到 Winbugs 中,它变得一团糟,当我尝试加载数据时,它突出显示了一些数据,例如 NA2.0 应该是 NA 2.0 并说它“期望一个数字或一个 NA 或 END”。纠正这些错误后,数据看起来还不错,直到它显示 'END' 的结尾处,它说了同样的话,只是在 END 上突出显示了 E

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

【问题讨论】:

【参考方案1】:

如果您已包含数据集的一部分,则回答会更容易,因为您已将其包含在 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 之前检查文件是否正常,例如使用“特殊粘贴”和纯文本。

【讨论】:

【参考方案2】:

    来自:↨here 下载文件“writeDatafileR.txt”。详情请戳a link!

    用 R 写: source("writeDatafileR.txt")

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

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

【讨论】:

以上是关于如何从 Excel 或记事本(以 .txt 结尾的文档)将数据加载到 Win Bugs 中?的主要内容,如果未能解决你的问题,请参考以下文章

word中的内容如何导入Excel指定表格里?

jpfgifwav等用txt打开,首行乱码格式

Excel VBA 如何把单元格中的多行文字输出到txt中

把EXCEL转换成TXT怎么没有分隔符号那个画面 怎样才能找到啊

如何检查一列是不是以pandas中的a或b结尾

txt如何转换成bin或xml格式?