В настоящее время я пытаюсь вычислить оценки модели с помощью начальной загрузки BLB и хотел бы сделать это параллельно. мой код отлично работает, когда я не делаю его параллельно. проблема, когда я выполняю параллельные вычисления, заключается в том, что результаты, которые я получаю от каждого ядра, содержат значения NA. Я не понимаю, как я получаю значения NA, если значения набора данных Iris вообще не содержат NA. вот код, который я использую:
library(doParallel)
library(itertools)
num_of_cores <- detectCores()
cl <- makePSOCKcluster(num_of_cores)
registerDoParallel(cl)
attach(iris)
data <- iris
coeftmp <- data.frame()
system.time(
r <- foreach(dat = isplitRows(data, chunks=num_of_cores),
.combine = cbind) %dopar% {
BLBsize = round(nrow(dat)^0.6)
for (i in 1:400){
set.seed(i)
# sampling B(n) data points from the original data set without replacement
sample_BOFN <- dat[sample(nrow(dat), size = BLBsize, replace = FALSE), ]
# sampling from the subsample with replacment
sample_bootstrap <- sample_BOFN[sample(nrow(sample_BOFN), size = nrow(sample_BOFN), replace = TRUE), ]
bootstrapModel <- glm(sample_bootstrap$Petal.Width ~ Petal.Length + Sepal.Length + Sepal.Width, data = sample_bootstrap)
coeftmp <- rbind(coeftmp, bootstrapModel$coefficients)
}
#calculating the estimators of the model with mean
colMeans(coeftmp)
})
sample_BOFN
, если вы выполняете загрузку. Но также не похоже, что вы используетеsample_BOFN
, поэтому вы можете удалить это из (примера) кода. - person Alex W   schedule 14.11.2015NA
s, если используете только 1 ядро? - person Alex W   schedule 15.11.2015