我有一个非常大的矩阵(16,000乘16,000)我需要上传到MongoDB数据库。我试图将此矩阵拆分为一个列表,然后使用parLapply转换为BSON。这是我的代码
library(foreach)
library(doMC)
library(parallel)
noCores <- detectCores() - 1
registerDoMC(noCores)
matrix <- as.matrix(cov(mtcars))
cl <- makeCluster(mc <- getOption("cl.cores", detectCores()/2))
clusterEvalQ(cl, {
library(rmongodb)
library(rjson)})
lst <- split(as.data.frame(matrix), rownames(matrix))
df_list <- parLapply(cl, lst, mongo.bson.from.list)
我在这里使用mtcars作为测试矩阵。我收到此错误
> df_list
$am
Error in print.mongo.bson(0L) :
mongo.bson object appears to have been destroyed
似乎parLapply没有正确创建列表。有任何想法吗?先感谢您。