我正在尝试使用doParallel
来并行查询。我在尝试使用col_funcs
函数后,在同一个脚本bsp_functions.R
中使用它。
#install.packages("doParallel")
library(doParallel)
cl <- makeCluster(3)
registerDoParallel(cl, cores=1)
path <- ("~/Combined/")
source(paste(path, "bsp_functions.R", sep=""))
res <- bsn(data=data, outcome=outcome)
#bsp_functions.R
bsn <- function(data, outcome){
rs_fun <- foreach(i=1:length(sets), .combine=rbind) %dopar% {
list['data.temp', 'sets'] <- col_funcs(data, set)
}
}
col_funcs <- function(data, set){
# processing
}
它给出了以下错误:
Error:
Error in { : task 1 failed - "could not find function "col_funcs""
在查看此post之后,我通过将函数通过.export
传递给全局环境,更改了我的代码。
rs_fun <- foreach(i=1:length(sets), .combine=rbind, .export='col_funcs') %dopar% {
现在,它给出了以下错误。
Error in { :
task 1 failed - "object of type 'builtin' is not subsettable"
任何帮助都将不胜感激。