foreach met variabelen en packages
De snelheid waarmee een bevolking groeit, heet het groeipercentage en wordt uitgedrukt als percentage. Bijna elk land ziet een daling in het groeipercentage, maar sommige gaan sneller achteruit dan andere.
Je bent aangenomen als Demografisch Analist en je taak is om de verhouding te berekenen tussen het groeipercentage van een land en het wereldwijde groeipercentage voor de jaren 2017 tot en met 2021. Je hebt een lijst met dataframes, ls_df, elk is een dataframe zoals dit:
country year growth_rate
Afghanistan 2017 2.52
...
Je hebt ook een wereldwijd groeidataframe, df_global:
year global_growth
2017 1.15
...
foreach en dplyr zijn voor je geladen. De cluster is al aangemaakt en geregistreerd bij de foreach-backend.
Deze oefening maakt deel uit van de cursus
Parallel programmeren in R
Oefeninstructies
- Exporteer
df_globalnaar de cluster binnen de aanroep vanforeach(). - Geef het
dplyr-pakket op dat nodig is voor de berekening. - Gebruik
rbindals de combineermethode. - Gebruik de parallelle operator.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
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)