foreach с переменными и пакетами
Темп роста населения называется коэффициентом роста и выражается в процентах. В большинстве стран мира этот показатель снижается, однако у некоторых снижение происходит быстрее.
Вы работаете демографом-аналитиком, и ваша задача — вычислить отношение коэффициента роста населения каждой страны к глобальному коэффициенту роста за период с 2017 по 2021 год. У вас есть список фреймов данных ls_df, каждый из которых выглядит следующим образом:
country year growth_rate
Afghanistan 2017 2.52
...
Также у вас есть фрейм данных с глобальными показателями роста — df_global:
year global_growth
2017 1.15
...
Пакеты foreach и dplyr уже загружены. Кластер создан и зарегистрирован в качестве бэкенда для foreach.
Это упражнение является частью курса
Параллельное программирование на R
Инструкции к упражнению
- Экспортируйте
df_globalв кластер в вызове функцииforeach(). - Укажите пакет
dplyr, необходимый для вычислений. - Задайте
rbindв качестве метода объединения результатов. - Используйте параллельный оператор.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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)