Как исправить "объект 'я' не найден" в R foreach? - PullRequest
0 голосов
/ 06 апреля 2019

Мне нужно запустить тысячи моделей с тысячами результатов. Поэтому я выбрал пакеты «foreach» и «doparallel», чтобы увеличить скорость. Для пакетов для анализа моих данных я выбрал два разных пакета: пакет «MASS» и пакет «lqmm». Пакет «MASS» работал хорошо, но пакет «lqmm» всегда выдавал ошибку. Но я думаю, что могут быть способы решения этой проблемы путем редактирования некоторых операторов в функции foreach. Я искал все связанные вопросы в этом аспекте, но все еще застрял. Я надеюсь, что кто-то может помочь мне с этим. Заранее спасибо.

Я пытался добавить ".packages" в функцию foreach.

# read packages
library(foreach)
library(doParallel)
library(Formula)

# Parallel 
cl <- makeCluster(5)
registerDoParallel(cl)
results <- foreach (i=1:10,.combine='rbind',.packages=c('lqmm')) %dopar% {
model <- lqmm(((eval(data)[,i] ~ AGE)), random=~1, group=id, data=data)
exposure="AGE"
pvalue=summary(model)$tTable[2.5]
want <- cbind(exposure, pvalue)
}
stopCluster(cl)

Но я все еще получил эту ошибку: Ошибка в {: задача 1 не выполнена - "объект 'i' не найден"

Я предполагаю, что foreach не понимает меня здесь (то есть, с 1 по 10), но я не знаю, как заставить foreach понимать меня здесь. Это не переменная / объект, это цикл, изменяющийся с 1 на 10.

Может ли кто-нибудь помочь мне с этим? Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...