【发布时间】:2012-05-14 02:01:12
【问题描述】:
我正在读取一个 XML 文件,并想尝试使用 foreach 和 doSNOW 来提高性能,但是在使用 plyr 时我遇到了错误。我想可能是因为我错过了将函数和包发送给工人的方法。
library(foreach)
library(doSNOW)
cl <- makeCluster(4)
registerDoSNOW(makeCluster(4, type = "SOCK"))
> getDoParWorkers()
[1] 4
> getDoParName()
[1] "doSNOW"
> getDoParVersion()
[1] "1.0.5"
namelist = list()
out1 <- foreach(i = 1:xmlSize(root[[3]])) %dopar% {
namelist[[i]] <- llply(xmlToList(root[[3]][[i]][[2]]),
data.frame, .parallel = TRUE)
}
out2 <- t(as.vector(as.data.frame(namelist)))
产生错误:
Error in { : task 1 failed - "could not find function "llply""
【问题讨论】:
-
如果您可以将它作为一个独立的示例重新发布,那将是很好的。什么是root,它当然需要一个库(XML)。
标签: r foreach parallel-processing plyr