在R中如何将矩阵市场格式化稀疏矩阵加载到dgCMatrix中?

时间:2011-01-12 01:05:11

标签: r

我正在尝试使用Matrix包来读取MatrixMarket格式的文件,但我找回了ngTMatrix。由于没有从ngTMatrix转换为dgCMatrix的方法,因此我无法将其转换为as。将其转换为非稀疏矩阵不是一个选项,因为它太大了。 有什么建议吗?

1 个答案:

答案 0 :(得分:3)

我不确定您遇到问题的原因,因为可以使用as()强制ngTMatrix强制ngCMatrix

> pm <- as(as.integer(c(2,3,1)), "pMatrix")
3 x 3 sparse Matrix of class "pMatrix"

[1,] . | .
[2,] . . |
[3,] | . .

> pm.t <- as(pm, 'ngTMatrix')
> pm.c <- as(pm.t, 'ngCMatrix')

> class(pm.c)
[1] "ngCMatrix"
attr(,"package")
[1] "Matrix"

> class(pm.t)
[1] "ngTMatrix"
attr(,"package")
[1] "Matrix"