我正在尝试在R中创建一个10 ^ 5×10 ^ 5的大型稀疏矩阵,但是遇到了内存问题。
> Matrix(nrow=1e5,ncol=1e5,sparse=TRUE)
Error in Matrix(nrow = 1e+05, ncol = 1e+05, sparse = TRUE) :
too many elements specified
看起来这是因为元素的数量大于2 ^ 31,这是最大整数值。但是我在64位机器上运行它。
> .Machine$integer.max
[1] 2147483647
有没有办法创建如此庞大的稀疏矩阵?
答案 0 :(得分:6)
看起来诀窍是设置data=0
而不是data=NA
。
> Matrix(data=0,nrow=1e5,ncol=1e5,sparse=TRUE)