【问题标题】:How to write and read matrix from file without column names?如何从没有列名的文件中写入和读取矩阵?
【发布时间】:2015-01-26 20:17:10
【问题描述】:

一个矩阵的例子是:

Aexample
[,1] [,2] [,3] [,4]
[1,]  0.6  0.4 0.00  0.0
[2,]  0.4  0.4 0.00  0.0
[3,]  0.4  0.4 0.00  0.0
[4,]  0.0  0.0 0.40  0.4
[5,]  0.0  0.0 0.34  0.4
[6,]  0.0  0.0 0.40  0.4

它被保存到一个文件中

write.table (Aexample, file = "~/R/Aexample", row.names = FALSE, col.names = FALSE);

然后我读到了

Aexample = as.matrix(read.table(file="~/R/Aexample"));

但结果总是有我不想要的 V1 V2 V3 V4 列名:

    V1  V2   V3  V4
[1,]  0.6  0.4 0.00  0.0
[2,]  0.4  0.4 0.00  0.0
[3,]  0.4  0.4 0.00  0.0
[4,]  0.0  0.0 0.40  0.4
[5,]  0.0  0.0 0.34  0.4
[6,]  0.0  0.0 0.40  0.4

保存 Aexample 矩阵然后从文件中读取并获取原始 Aexample 矩阵的最简单方法是什么? (不要读到 aa = as.matrix(read.table(file="~/R/Aexample")) 然后用多行代码从 aa 创建 Aexample)

【问题讨论】:

  • 这可能会被转移到 SO,但你可以只用 col.names = TRUE 写表,然后用 header = T 读入它。这将保留你的 [,1], [, 2] 标题。

标签: r


【解决方案1】:

您可以分两步完成:

1.

Aexample = as.matrix(read.table(file="~/R/Aexample"))

2.

colnames(Aexample) <- NULL

示例

aaa<-matrix(1:24,nrow=6)

> aaa
     [,1] [,2] [,3] [,4]
[1,]    1    7   13   19
[2,]    2    8   14   20
[3,]    3    9   15   21
[4,]    4   10   16   22
[5,]    5   11   17   23
[6,]    6   12   18   24

write.table(aaa,"aaa.txt",col.names=F,row.names=F)

bbb<-as.matrix(read.table(file="aaa.txt",header=T))
colnames(bbb)<-NULL

> bbb
     [,1] [,2] [,3] [,4]
[1,]    1    7   13   19
[2,]    2    8   14   20
[3,]    3    9   15   21
[4,]    4   10   16   22
[5,]    5   11   17   23
[6,]    6   12   18   24

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-18
    相关资源
    最近更新 更多