首页 文章

将“稀疏矩阵”COO格式的data.frame转换为实际的稀疏矩阵类?

提问于
浏览
0

我代表以下矩阵:

6  5  0
0  5  4
0  0  4

作为data.frame . R中的data.frame有三列 . COO格式如下:

i  j  Xij
1  1  6
1  2  5
2  2  6
2  3  5
3  3  6

请注意,没有行 [1 3 0] 行,因为它的值为零而省略 . 这同样适用于下三角值,也是零 .

What I want to do is 将其转换为R中 Matrix 包中的 matrix.coodgCMatrix 类对象

我不想首先将它转换为常规矩阵,因为我正在使用的数据集非常大,并且编写一个循环以将其转换为标准R矩阵将花费太长时间 .

1 回答

  • 2

    查看 ?Matrix::sparseMatrix ,我们可以使用已编码的函数,如下所示:

    myMatrix <- Matrix::sparseMatrix(i = coo$i, j = coo$j, x = coo$Xij, dims = c(42, 42))
    

相关问题