【发布时间】:2015-10-27 22:25:19
【问题描述】:
如何在 R 中合并两个具有不同大小(列和行)的正式类 dgCMatrix 的大型(大约 500k 列和行)稀疏矩阵?
简化示例:我有一个完整的 6x6 矩阵
1 2 3 4 5 6
1 0 0 0 0 0 0
2 0 0 0 0 0 0
3 0 0 0 0 0 0
4 0 0 0 0 0 0
5 0 0 0 0 0 0
6 0 0 0 0 0 0
现在我想合并第二个不同大小的矩阵:
3 4 5 6
1 0 1 0 0
3 0 0 1 0
4 1 0 0 0
结果应该是:
1 2 3 4 5 6
1 0 0 0 1 0 0
2 0 0 0 0 0 0
3 0 0 0 0 1 0
4 1 0 0 0 0 0
5 0 0 0 0 0 0
6 0 0 0 0 0 0
我尝试了cbindX 并合并,但两者都不起作用:
只能使用矩阵和data.frames
或
不能将类 "*structure("dgCMatrix", package = "Matrix")" 强制转换为 data.frame。
但是,我无法将我的矩阵更改为 sparse=FALSE 矩阵类,如此处建议的 in this post 或 data.frame,因为在这种情况下,R 无法再处理我机器上的矩阵大小。
任何帮助将不胜感激。谢谢!
【问题讨论】:
标签: r matrix merge sparse-matrix