CommencerCommencer gratuitement

Traiter plusieurs entrées

Vous êtes Analyste Paie dans une société d’externalisation. Chaque mois, vous recevez des données sur les employés de votre paie. On vous a demandé d’écrire du code R parallèle pour calculer le montant total versé par jour.

Vous disposez de deux listes dans votre espace de travail, ls_hours et ls_rates. Chacune contient 30 éléments, un par jour du mois. Chaque élément de ls_hours correspond aux heures travaillées par chaque employé un jour donné, et chaque élément de ls_rates contient les taux horaires correspondants. Vous avez aussi une fonction, calc_payout(), qui prend deux arguments, hours et rates.

calc_payout <- function (hours, rates) paste0("$", sum(hours * rates))

Vous devez utiliser la fonction appropriée du package furrr pour effectuer ce calcul en parallèle. Le package furrr a été chargé pour vous.

Cet exercice fait partie du cours

Programmation parallèle en R

Afficher le cours

Instructions

  • Utilisez la variante de future_map() qui accepte plusieurs entrées à parcourir.
  • Combinez ls_hours et ls_rates.
  • Indiquez la fonction calc_payout() à la variante de future_map().
  • Revenez à un plan séquentiel.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

plan(multisession, workers = 5)

# Use the correct future_map() variant
___(
# Combine ls_hours and ls_rates
  ___(___, ___),
# Specify the function to apply
  ___)

# Revert to sequential plan
___(___)
Modifier et exécuter le code