如何读取MASS :: write.matrix()写的文件?

时间:2015-10-01 09:00:32

标签: r

我正在尝试用R读取MASS :: write.matrix()的文件输出。可以使用this answer中的示例创建这样的文件:

library(MASS)
mat <- matrix(1:100,nrow=20)
write.matrix(mat,'/path/to/file.prn',sep = "\t")

我现在怎么用R读取这个文件? 使用read.fwf很麻烦,因为我需要给它每个字段的宽度。我开始自动化这个,但它必须已经在某个地方完成了。我想知道为什么包MASS中没有read.matrix。

1 个答案:

答案 0 :(得分:1)

使用您的示例:

library(MASS)
mat <- matrix(1:100,nrow=20)
write.matrix(mat,'file.prn',sep = "\t")

mat2 <- as.matrix(read.table("file.prn", as.is = TRUE))
# make mat2 a true matrix
colnames(mat2) <- NULL
mat2 <- unname(mat2)
all.equal(mat, mat2)
# [1] TRUE