foreach med variabler och paket
Den hastighet med vilken en befolkning växer kallas tillväxttakt och uttrycks i procent. Nästan varje land upplever en sjunkande tillväxttakt, men för en del länder går minskningen snabbare.
Du har anlitats som demografianalytiker och din uppgift är att beräkna kvoten mellan ett lands befolkningstillväxttakt och den globala tillväxttakten för åren 2017 till 2021. Du har fått en lista med dataramar, ls_df, där varje dataram ser ut så här:
country year growth_rate
Afghanistan 2017 2.52
...
Du har också en global dataram för tillväxt, df_global:
year global_growth
2017 1.15
...
foreach och dplyr har lästs in åt dig. Klustret har redan skapats och registrerats med foreach-backend.
Den här övningen är en del av kursen
Parallell programmering i R
Övningsinstruktioner
- Exportera
df_globaltill klustret i anropet tillforeach(). - Ange paketet
dplyrsom krävs för beräkningen. - Ange
rbindsom kombinationsmetod. - Använd den parallella operatorn.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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)