【发布时间】:2018-02-02 03:23:24
【问题描述】:
当我使用以下代码将库 data.table 加载到 cpu 集群时,R 会引发错误。但是 data.table 包安装在 R 上,并且在并行代码之外使用时可以正常工作。
no_cores <- detectCores() - 1
cl <- makeCluster(no_cores,outfile="out.txt")
clusterEvalQ(cl, library(data.table))
错误:-
clusterEvalQ(cl, library(data.table)) checkForRemoteErrors(lapply(cl, recvResult)) 中的错误: 3个节点产生错误;第一个错误:没有名为“data.table”的包
【问题讨论】:
-
你安装包了吗?简单的
library(data.table)工作吗? -
是的。我可以在并行代码之外使用这个包而没有问题
-
此时无法重现该错误。尝试更新 R 和包,重新启动会话等。
-
如果你使用
parallelMap包github.com/berndbischl/parallelMap你可以通过parallelLibrary('data.table')加载库 -
看起来集群工作人员没有从与主 R 进程相同的包库中加载包。确保
clusterEvalQ(cl, .libPaths())输出与.libPaths()相同的库路径。如果不是,cl <- makeCluster(no_cores, outfile = "out.txt", manual = TRUE)输出什么?
标签: r parallel-processing data.table