首页 文章

从R中的稀疏矩阵重构密集矩阵

提问于
浏览
0

我有一个非常大的数据集,表示为文本文件中的稀疏矩阵(三列,i,j,值) . 我正在尝试两种单独的分析 - 首先,找到每列的平均值,然后找到矩阵的所有对角元素 .

由于以前的数据集以不太精细的方式表示相同的信息,我只使用了常规矩阵函数 . 为了对这个稀疏矩阵做同样的事情,我想重建密集矩阵并以相同的方式计算 . 但是,如果有一种方法可以在不重建密集矩阵的情况下获得列平均值/对角线,那么也可以 .

1 回答

  • 3

    我们可以使用 colMeansdiag

    colMeans(m1)
    #[1] 0.0 0.6 2.8 0.0 1.4 0.0 2.8 0.0 2.4
    
    diag(m1)
    #[1] 0 0 9 0 0
    

    数据

    library(Matrix)
    m1 <- sparseMatrix(c(1,1,2,3, 4,5), c(2,5, 3,3,7,9), 
                   x = c(3,7, 5, 9, 14, 12))
    

相关问题