parLapply, чтобы применить пользовательскую функцию к каждому элементу списка в r - PullRequest
0 голосов
/ 01 апреля 2020

Я пытаюсь parLapply() функцию для каждого элемента списка "входов". Каждый элемент является именем рабочей области. Каждое рабочее пространство содержит с именем, совпадающим с именем рабочего пространства. Итак,

1->loading workspace, 
2-> removing extension using strsplit() to get data.frame name, 
3->using as.name() to give it to a variable, 
4->performing inner join using merge(), 
5->rbind results of merge to a dataframe
6-> and removing unused variables from storage

Функция, которую я написал, ниже

library(parallel)
no_cores<-detectCores()
clust <- makeCluster(no_cores)

blockchain2009 <- data.frame()


load("blocktransact2009.RData")

inputs <- c("blockinputs1.RData","blockinputs2.RData")

parLapply(clust,inputs,process_inputs)

process_inputs <- function(i)
{
load(i)
i<-strsplit(i,"\\.")
blockinput<-as.name(i)

temp <- merge(x=blocktransact2009,y=blockinput,all.x=TRUE)
blockchain2009 <- rbind(blockchain2009,temp)
rm(temp,blockinput)
}

Я получу ниже, как решить. parLapply() должно применяться к каждому элементу списка.

Ошибка в checkForRemoteErrors (val): один узел выдал ошибку: объект «список» не может быть приведен к типу «символ»

...