Назначения внутри foreach и итеративное сохранение вывода из foreach - PullRequest
0 голосов
/ 18 декабря 2018

Я подключаюсь к локальной базе данных SQL Server и выполняю некоторые запросы в цикле.Вывод каждой итерации сохраняется как файл данных RDS локально на диске.

Это прекрасно работает, когда я последовательно выполняю это в стандартном цикле for, как показано ниже.

for(i in 1: NROW(Employee_Df))
{
     df_results <-  sqlQuery(myconn, paste(" SELECT * FROM Salary_Df 
               WHERE FullName like ",Employee_Df$FullName[i],  "",sep="'"))

        saveRDS(df_results, 
         file=paste0("/Home/Desktop", "Salary",Employee_Df$FullName[i], ".rds"),
        compress = TRUE)
}

Когда я пытаюсьчтобы назначить вывод из того же запроса, используя foreach, код не выполняется.Я не вижу сообщений об ошибках, но не вижу ни одного действительного файла RDS, сохраненного на основе результатов этого запроса.

foreach(i = 1:2, .packages="RODBC")%dopar%{

      df_results <-  sqlQuery(myconn, paste(" SELECT * FROM Salary_Df 
                   WHERE FullName like ",Employee_Df$FullName[i],  "",sep="'"))

            saveRDS(df_results, 
             file=paste0("/Home/Desktop", "Salary",Employee_Df$FullName[i], ".rds"),
            compress = TRUE)
  }

Любые предложения о том, как сделать эту работу в foreach, оченьоценены.

...