1

Error in { : task 1 failed - "invalid connection"

为什么每次尝试将所有 4 个内核用于并行进程时都会出现此错误。

这是示例代码:

NumberOfCluster <- 4
cl <- makeCluster(NumberOfCluster)
registerDoSNOW(cl)

fl<- file(file.choose(),"r") # file.choose() is going to locate a file(.tsv)                 
                             # of size 8 gb (RAM is 4 GB)

foreach(i=1:3) %dopar% {

  View(name_fil <- read.delim(fl,nrows = 1000000,header = TRUE))

}
4

1 回答 1

3

您收到错误消息,因为文件对象无法导出到工作人员。相反,您可以导出文件的名称并在每个工作人员上打开该文件:

fname <- file.choose()
foreach(i=1:3) %dopar% {
  fl <- file(fname, "r")
  View(name_fil <- read.delim(fl,nrows = 1000000,header = TRUE))
}

接下来使用该功能可能会遇到问题View,但这应该可以解决“无效连接”错误。

于 2015-07-20T19:02:28.197 回答