• Menu
    • Nos Formations
    • Nos Prestations
    • Les Astuces
Skip to content
Astuces et scripts R
Astuces et scripts R
Primary Navigation Menu
Menu
  • Abcd’R
  • Tous les scripts
    • Voir les articles
    • Proposer un Article
  • Formation au logiciel R
  • Contact

Les dates de formations à R, éligibles au CPF sont en lignes !

Voir nos formations

Appliquer des fonctions de manière parallèle avec furrr

Par vincent
Le octobre 3, 2024
Dans parallélisation
Tagged furrr, parallèle
Avec 0 Commentaire

Appliquer des fonctions de manière parallèle avec furrr

Dans le monde de la programmation en R, il est souvent nécessaire de traiter de grandes quantités de données ou d’effectuer des calculs intensifs. Pour améliorer l’efficacité de ces opérations, on peut utiliser le parallélisme, qui permet d’exécuter plusieurs tâches simultanément. Le package furrr est une excellente solution pour appliquer des fonctions de manière parallèle en R, en s’appuyant sur la syntaxe familière de purrr.

Installation de furrr

Avant de commencer, assurez-vous d’avoir installé le package furrr. Vous pouvez l’installer depuis CRAN avec la commande suivante :

install.packages("furrr")

Exemple concret

Imaginons que nous souhaitions calculer le carré de chaque nombre dans un vecteur. Si le vecteur est très grand, cela peut prendre du temps. Utilisons furrr pour effectuer ce calcul en parallèle.

Étape 1 : Charger les bibliothèques nécessaires

library(furrr)
library(dplyr)  # Pour la manipulation de données

Étape 2 : Préparer les données

Créons un vecteur de nombres de 1 à 1 million.

nombres <- 1:1e6

Étape 3 : Configurer le plan de parallélisme

Avant d’utiliser furrr, nous devons définir un plan de parallélisme. Pour cet exemple, nous allons utiliser multisession, qui permet d’exécuter des tâches en parallèle sur plusieurs sessions R.

plan(multisession)

Étape 4 : Appliquer la fonction en parallèle

Utilisons la fonction future_map de furrr pour appliquer la fonction qui calcule le carré de chaque nombre dans notre vecteur.

resultats <- future_map(nombres, ~ .x^2)

Étape 5 : Vérifier les résultats

Nous pouvons maintenant vérifier que nos résultats sont corrects en comparant avec la fonction sapply.

# Vérification
identical(resultats, lapply(nombres, function(x) x^2))  # Devrait retourner TRUE

Conclusion

L’utilisation de furrr pour appliquer des fonctions de manière parallèle est un moyen efficace d’accélérer vos calculs en R. Dans cet exemple, nous avons vu comment configurer un plan de parallélisme, créer un vecteur de données et appliquer une fonction en parallèle. En exploitant la puissance du parallélisme, vous pouvez traiter des données volumineuses plus rapidement et améliorer la performance de vos analyses.

N’hésitez pas à explorer d’autres fonctions de furrr pour des applications plus complexes et adaptées à vos besoins spécifiques !

2024-10-03
Article précédent: Ajuster une régression linéaire avec lm
Article suivant: Apprendre à utiliser pak pour gérer les dépendances

Formation et consultance

Trouvez votre formation R sur-mesure chez ThinkR

-- Contactez-nous --

Catégories

Commentaires récents

  • Sébastien dans Comment effectuer des calculs de somme et de moyenne sur les colonnes ou les lignes d’une matrice ? colSums, rowSums, colMeans, rowMeans
  • Achraf Mazouz dans Comment effectuer des calculs de somme et de moyenne sur les colonnes ou les lignes d’une matrice ? colSums, rowSums, colMeans, rowMeans
  • Lou Sayd dans Coment alculer simplement la SEM dans R ? (Erreur Standard)
  • Nicolas dans Comment remplacer une chaîne de caractères ? string_replace_all(df, "pattern","replacement")
  • Vincent dans Comment comparer deux moyennes avec R grâce au test de Student ? t.test

Archives

Plan

  • Abcd’R
  • Tous les scripts
    • Proposer un Article
  • Ressources documentaires
    • Le logiciel R
    • Liste des interfaces graphiques
  • Formation au logiciel R
  • Contact
  • Politique de confidentialité

Flux ThinkR – Certification & Formation langage R

  • Déboguer une fonction avec debugonce() ou browser()
  • Dessinez pour gagner : L’impact des maquettes sur vos apps Shiny
  • Gérer et manipuler des dates en 2024 : une année pas comme les autres !
  • Retour vers le turfu : R, le web, et webR
  • Créer un package R et le versionner avec VSCode ? Mission possible !

Méta

  • Connexion
  • Flux des publications
  • Flux des commentaires
  • Site de WordPress-FR

ABCD'R (par ThinkR ) © 2025 - Confidentialité