Zacznij terazZacznij za darmo

foreach ze zmiennymi i pakietami

Tempo, w jakim rośnie populacja, nazywamy stopą wzrostu i wyrażamy jako procent. Niemal każdy kraj odnotowuje jej spadek, ale niektóre robią to szybciej niż inne.

Zostałeś zatrudniony jako analityk demograficzny. Twoim zadaniem jest obliczenie stosunku krajowej stopy wzrostu populacji do globalnej stopy wzrostu dla lat 2017–2021. Dysponujesz listą ramek danych ls_df, z których każda wygląda następująco:

    country year growth_rate
Afghanistan 2017        2.52
...

Masz też globalną ramkę danych df_global:

year global_growth
2017          1.15
...

foreach i dplyr są już wczytane. Klaster został utworzony i zarejestrowany jako backend dla foreach.

To ćwiczenie jest częścią kursu

Programowanie równoległe w R

Zobacz kurs

Instrukcje do ćwiczenia

  • Wyeksportuj df_global do klastra wewnątrz wywołania funkcji foreach().
  • Wskaż pakiet dplyr wymagany do obliczeń.
  • Ustaw rbind jako metodę łączenia wyników.
  • Użyj operatora równoległego.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

df_comp <- foreach(df = ls_df,
                   # Export variable
                   ___,
                   # Specify any package needed
                   ___,
                   # Specify a combine method 
                   ___
                   # Use the parallel operator
                  ) ___ {
    df %>%
      left_join(df_global, "year") %>% 
      mutate(comp = growth_rate/global_growth)
}

stopCluster(cl)
Edytuj i uruchom kod