ПочатиПочніть безкоштовно

Конфігурація furrr

Ви працюєте в консалтинговій компанії з питань громадського здоров'я. Ваш керівник просить вас написати паралельний код для обчислення різних квантилів розподілу тривалості життя.

У робочому середовищі є ls_exp — список векторів. Кожен елемент цього списку — це вектор оцінок тривалості життя для кожної країни. Функція calc_quant() для обчислення квантилів доступна вам. Ця функція приймає два аргументи: life_exp — вектор тривалості життя, і quant — фіксоване значення квантіля для обчислення. Значення для другого аргументу збережене як my_quant у вашому середовищі.

Вам потрібно застосувати calc_quant() до кожного елемента ls_exp, використовуючи пакет furrr.

furrr уже під'єднано для вас.

Ця вправа є частиною курсу

Паралельне програмування в R

Переглянути курс

Інструкції до вправи

  • Створіть конфігурацію для функцій furrr, щоб зазначити my_quant як глобальну змінну.
  • У виклику future_map() відобразьте calc_quant() на кожен елемент ls_exp.
  • Передайте експортовану глобальну змінну в аргумент quant функції calc_quant().
  • Передайте створену раніше конфігурацію в аргумент .options.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create a configuration to export global variables
config <- ___(globals = "___")

plan(multisession, workers = 5)

# Specify input list and function to apply
future_map(___, ___,
# Supply exported value to quant argument
           quant = ___,
# Specify configuration
           .options = ___)

plan(sequential)
Редагувати та запускати код