4

我正在尝试将我在 R 中的矩阵保存为一个文本文件,该文件以制表符分隔,包含行名和列名并正确对齐。

我试过这个:

write.table(data, "mytable.txt", sep="\t", col.names=TRUE)

但是当我打开文件时,它是一团糟。我认为这与未指定我的行名或列名有关,但我不确定。

4

2 回答 2

2

您可以使用以下代码,它将使用您从 R 控制台打印时看到的简洁格式将矩阵的输出写入文件:

max.print <- getOption('max.print')
options(max.print=nrow(data) * ncol(data))
sink('data.txt')
data
sink()
options(max.print=max.print)

查找名为data.txt. 要查找位置,请File -> Open script从 R 控制台执行。它应该在打开对话框的目录中可见。

免责声明:我基本上从这个 SO 帖子中剪切并粘贴了这段代码,你的问题实际上是重复的。

于 2015-09-29T02:25:36.397 回答
0

write.table有关 CSV(也是制表符分隔)文件的帮助页面:

CSV 文件。默认情况下,行名列没有列名。如果 col.names = NA 和 row.names = TRUE 则添加一个空白列名

由于row.names = TRUE是默认设置,如果您更改col.names=TRUEcol.names=NA,您的输出应该正确对齐。

于 2015-09-29T02:46:14.617 回答