1. Nauka
  2. /
  3. Kursy
  4. /
  5. Programowanie równoległe w R

Connected

ćwiczenie

Pętle z foreach

Departament Zdrowia USA otrzymał zgłoszenia dotyczące wzrostu liczby niekorzystnych wyników podczas porodów. Chcesz zbadać, czy trend ten wiąże się z niskim lub wysokim wiekiem matki. Twój zespół zebrał zbiór danych births z poprzedniego roku. Masz do dyspozycji listę ls_age – każdy jej element to wektor zawierający wiek matki przy każdym odnotowanym porodzie w danym stanie USA.

Poniższa pętla oblicza odsetek porodów w danym stanie, w których wiek matki był poniżej 20 lub powyżej 35 lat:

at_risk_perc <- rep(NA, length(ls_age))

for (m in 1:length(ls_age)) {
  at_risk_perc[m] <- 
    sum(ls_age[[m]] > 35 | ls_age[[m]] < 20) * 100/length(ls_age[[m]])
}

Jednak wykonanie zajmuje zbyt dużo czasu i chcesz przetestować inne opcje. Pakiety foreach, parallel oraz doParallel są już wczytane.

Instrukcje 1/2

undefined XP
    1
    2
  • Wskaż dane wejściowe, po których ma iterować funkcja foreach().
  • Użyj właściwego operatora do wykonania sekwencyjnego.