• 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

Joindre des tables avec dplyr::left_join

Par vincent
Le novembre 20, 2024
Dans jointure
Tagged left_join, tables
Avec 0 Commentaire

Joindre des tables avec dplyr::left_join

Dans l’analyse de données, il est fréquent de devoir combiner plusieurs tables (ou data frames) pour obtenir des informations plus complètes. L’une des fonctions les plus utilisées pour cela est left_join() du package dplyr. Cet article vous expliquera comment utiliser cette fonction avec un exemple concret.

Qu’est-ce que left_join ?

La fonction left_join() permet de joindre deux tables en conservant toutes les lignes de la première table (la table de gauche) et en ajoutant les colonnes de la deuxième table (la table de droite) lorsque les valeurs correspondent. Si aucune correspondance n’est trouvée, les colonnes de la table de droite seront remplies avec des valeurs manquantes (NA).

Exemple concret

Imaginons que nous avons deux tables : une table clients contenant des informations sur des clients et une table commandes contenant des informations sur les commandes passées par ces clients.

Création des tables

Voici comment nous pouvons créer ces deux tables en R :

# Chargement du package dplyr
library(dplyr)

# Création de la table des clients
clients <- data.frame(
  id_client = c(1, 2, 3, 4),
  nom = c("Alice", "Bob", "Charlie", "David")
)

# Création de la table des commandes
commandes <- data.frame(
  id_commande = c(101, 102, 103),
  id_client = c(1, 2, 1),
  produit = c("Livre", "Stylo", "Cahier")
)

# Affichage des tables
print(clients)
print(commandes)

Utilisation de left_join

Nous allons maintenant utiliser left_join() pour combiner ces deux tables en fonction de la colonne id_client. Cela nous permettra d’obtenir une table qui contient les informations des clients ainsi que les produits qu’ils ont commandés.

# Jointure des tables
resultat <- left_join(clients, commandes, by = "id_client")

# Affichage du résultat
print(resultat)

Résultat attendu

Après avoir exécuté le code ci-dessus, le résultat sera le suivant :

  id_client     nom id_commande produit
1         1   Alice         101   Livre
2         1   Alice         103  Cahier
3         2     Bob         102   Stylo
4         3 Charlie          NA    <NA>
5         4   David          NA    <NA>

Explications des résultats

Dans le tableau résultant :

  • Les clients Alice et Bob apparaissent avec leurs commandes respectives.
  • Charlie et David n’ont pas de commandes, donc les colonnes id_commande et produit sont remplies avec des valeurs manquantes (NA).

Conclusion

La fonction left_join() de dplyr est un outil puissant pour combiner des tables en R. Elle vous permet de conserver toutes les lignes de la table de gauche tout en ajoutant des informations de la table de droite lorsque cela est possible. Cela facilite l’analyse des données en vous permettant de travailler avec des ensembles de données plus complets. N’hésitez pas à explorer d’autres types de jointures comme inner_join(), right_join() et full_join() pour répondre à différents besoins d’analyse.

2024-11-20
Article précédent: Interpréter les résultats d’un modèle linéaire avec summary
Article suivant: La fonction tapply pour des regroupements simples

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é