相关疑难解决方法(0)

如何在R中获得一个大的稀疏矩阵?(> 2^31-1)

我使用一些 C++ 代码从数据库中获取一个文本文件,并从Matrix包中创建一个 dgcMatrix 类型的稀疏矩阵。我第一次尝试构建一个具有超过 2^31-1 个非稀疏成员的矩阵,这意味着稀疏矩阵对象中的索引向量也必须长于该限制。不幸的是,向量似乎使用 32 位整数索引,就像 Rcpp 中的 NumericVectors 一样。

除了从头开始编写全新的数据类型之外,R 是否为此提供了任何便利?我不认为我可以使用太奇特的解决方案,因为我需要glmnet识别结果对象。

r sparse-matrix 32bit-64bit rcpp

6
推荐指数
2
解决办法
885
查看次数

R:创建具有2 ^ 31-1个非零元素的稀疏矩阵

我正在使用长度超过2 ^ 31个元素的向量创建稀疏矩阵.请参阅以下示例代码:

library(Matrix)

sz=2^31+10000
a=sample.int(15000000,size=sz,replace=TRUE)
b=sample.int(25000,size=sz,replace=TRUE)
c=sparseMatrix(a,b)
Run Code Online (Sandbox Code Playgroud)

这给了我最后一行的错误:

validityMethod中的错误(as(object,superClass)):不支持长向量:../../ src /include/Rinlinedfuns.h:137

我该如何解决这个问题?是否无法创建具有如此多非零条目的稀疏矩阵?我使用了最新的库,我有很多可用的内存.准确地说是128GB RAM.

memory r matrix sparse-matrix rcpp

6
推荐指数
0
解决办法
276
查看次数

标签 统计

r ×2

rcpp ×2

sparse-matrix ×2

32bit-64bit ×1

matrix ×1

memory ×1