对R中稀疏矩阵的每列进行排序

时间:2017-04-12 13:03:52

标签: r sorting matrix

我想知道我是否可以快速排序稀疏矩阵的每一列(使用" Matrix"包)。稀疏矩阵约为10,000 x 10,000。

的示例:

      [,1] [,2] [,3] [,4]
[1,]   1    .    .     .
[2,]   2    2    .     .
[3,]   .    1    .     1
[4,]   .    .    1     2

结果:

    [,1]  [,2]  [,3]  [,4]
[1,]   2    2     1     2
[2,]   1    1     .     1
[3,]   .    .     .     .
[4,]   .    .     .     .

我发现一些信息说存储在稀疏矩阵中的数据可能是基于col的,并且只存储非零元素,所以我想知道是否有一种快速方法来对这些数据进行排序。

我完全是一个新手,是否有快速的方式或者我可以使用Rcpp操纵数据,因为我对cpp更熟悉。非常感谢。

编辑:

使用apply(cosMat,2,sort),基准测试如下所示:

    Unit: seconds
                             expr      min       lq     mean   median       uq    max neval
 cosAns <- apply(cosMat, 2, sort) 1.741451 1.854026 1.877813 1.871355 1.896548 2.0143   100

0 个答案:

没有答案