在R中读入没有行和列名称的矩阵

时间:2014-11-01 22:33:23

标签: r matrix

我想读入R中的以下矩阵,但随后丢弃行和列名称:

    A       B       C       D
A   0       4562    50714   882
B   5718    2302    47      26
C   72055   82      5889    215
D   1930    41      85      396

我这样做:

matrix1 <-read.table("matrix_min.csv", header=T, sep=",")
m <- as.matrix(matrix1)

然而,由此产生的&#39; m&#39;仍然有行名和列名。我如何摆脱它们?

出于某种原因,在使用

读取文件时
matrix1 <-read.table("matrix_min.csv", header=T, sep=",")
m <- as.matrix(matrix1,row.names=0,col.names=0)
rownames(m) <- colnames(m) <- NULL
print(m)

产生

     [,1] [,2]    [,3]   [,4]    [,5] 
[1,] "A"  "    0" "4562" "50714" "882"
[2,] "B"  " 5718" "2302" "   47" " 26"
[3,] "C"  "72055" "  82" " 5889" "215"
[4,] "D"  " 1930" "  41" "   85" "396"

1 个答案:

答案 0 :(得分:7)

您需要使用header = TRUErow.names = 1将第一行和第一列作为维名称读取。

dat <- data.matrix(read.csv("matrix_min.csv", header = TRUE, row.names = 1,
                           sep = ","))

然后,根据评论中的建议,使用dimnames<-删除维度名称:

dimnames(dat) <- NULL