Bootstrap średniego wieku matek
Wiek matki w chwili porodu to ważny wskaźnik zdrowia populacji. Zbyt wysoki lub zbyt niski wiek matki może niekorzystnie wpłynąć na przebieg porodu.
Pracujesz jako analityk danych w Departamencie Zdrowia USA. Otrzymujesz listę ls_df złożoną z 51 ramek danych – po jednej dla każdego stanu USA oraz Dystryktu Kolumbia. Każda ramka danych zawiera kolumnę maternal_age. Twój przełożony chce, abyś za pomocą bootstrapu wyznaczył rozkład średniego wieku matek dla każdego stanu. Pętlę wykonującą bootstrap na pojedynczej ramce danych masz już napisaną – teraz musisz zrównoleglić te obliczenia. Pakiet parallel jest już wczytany.
To ćwiczenie jest częścią kursu
Programowanie równoległe w R
Instrukcje do ćwiczenia
- Opakuj pętlę bootstrapu w funkcję, która zwraca rozkład średniej.
- Utwórz klaster złożony z czterech rdzeni.
- Zastosuj funkcję bootstrapu do
ls_dfrównolegle, używającparLapply(). - Zatrzymaj klaster po zakończeniu wszystkich obliczeń.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)