Бутстреп середнього віку матері
Вік матері на момент народження дитини — важливий показник репродуктивного здоров'я населення. Надто високий або низький вік матері може негативно вплинути на результат пологів.
Ви працюєте аналітиком даних у Департаменті охорони здоров'я США. Вам надали список 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)