Бутстреп среднего возраста матери
Возраст матери на момент рождения ребёнка — важный показатель демографического здоровья населения. Слишком высокий или слишком низкий материнский возраст может негативно сказаться на исходе родов.
Вы работаете аналитиком данных в Министерстве здравоохранения США. В вашем распоряжении список ls_df из 51 фрейма данных — по одному для каждого штата и округа Колумбия. Каждый фрейм содержит столбец maternal_age. Ваш руководитель хочет получить бутстреп-распределение среднего возраста матери для каждого штата. Вы уже написали цикл для бутстрепа на одном фрейме данных. Теперь нужно распараллелить это вычисление. Пакет parallel уже загружен.
Это упражнение является частью курса
Параллельное программирование на R
Инструкции к упражнению
- Оберните цикл бутстрепа в функцию, которая возвращает распределение среднего значения.
- Настройте кластер из четырёх ядер.
- Примените функцию бутстрепа к
ls_dfпараллельно с помощьюparLapply(). - Остановите кластер после завершения всех вычислений.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Wrap the loop into a function
boot_mean <- ___ (df) ___
est <- rep(0, 1e3)
for (i in 1:1e3) {
b <- sample(df$mother_age, replace = T)
est[i] <- mean(b)
}
return(est)
___
# Make a cluster of four
cl <- ___
# Apply function to ls_df in parallel
state_dist <- ___
# Stop cluster
___(cl)