Des résultats de loterie reproductibles
Vous travaillez comme programmeur pour une loterie en ligne. Par la loi, les gagnants doivent être sélectionnés aléatoirement et le processus doit être transparent.
Dans votre espace de travail, vous disposez d’une liste de billets de loterie, ls_tickets. Il y a 51 éléments dans ls_tickets, un pour chaque État américain. Chaque élément de cette liste contient des numéros de billets de loterie. Dans votre espace de travail, vous avez une fonction, lottery(), qui sélectionne au hasard le billet gagnant pour chaque État. Vous testez la fonction lottery() en l’appliquant à ls_tickets en parallèle avec future_map(). Le problème, c’est que les gagnants changent à chaque exécution du code. Le package furrr a été chargé pour vous.
Cet exercice fait partie du cours
Programmation parallèle en R
Instructions
- Créez une configuration pour
future_map(). - Fixez la graine à
4321dans la configuration. - Fournissez cette configuration à
future_map().
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
lottery <- function(tickets) {
sample(tickets, 1)
}
# Create a configuration for future_map()
config <- ___(
# Provide the seed 4321 to the correct argument
___ = ___)
plan(multisession, workers = 4)
winners <- future_map(ls_tickets, lottery,
# Supply configuration to future_map()
___ = ___)
plan(sequential)