CommencezCommencez gratuitement

Traiter plusieurs entrées

Vous êtes analyste de la paie dans une firme d'impartition. Chaque mois, vous recevez des données sur les employés de votre liste de paie. On vous a demandé d'écrire du code R parallèle pour calculer le montant total versé par jour.

Vous avez deux listes dans votre espace de travail, ls_hours et ls_rates. Chacune compte 30 éléments, un pour chaque jour du mois. Chaque élément de ls_hours contient le nombre d'heures travaillées par chaque employé un jour donné, et chaque élément de ls_rates contient les taux horaires correspondants. Vous disposez aussi d'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 paquet furrr pour effectuer ce calcul en parallèle. Le paquet furrr a été chargé pour vous.

Cette activité fait partie du cours

Programmation parallèle en R

Voir le cours

Instructions de l’exercice

  • 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 mode séquentiel.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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