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
Instrukcje do ćwiczenia
- Wyeksportuj
df_globaldo klastra wewnątrz wywołania funkcjiforeach(). - Wskaż pakiet
dplyrwymagany do obliczeń. - Ustaw
rbindjako 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)