Kom igångKom igång gratis

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

Visa kurs

Övningsinstruktioner

  • Exportera df_global till klustret i anropet till foreach().
  • Ange paketet dplyr som krävs för beräkningen.
  • Ange rbind som 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)
Redigera och kör kod