Leçon 9 / 10 — Chapitre 6: Manipuler des données avec pandas
Fusionner deux DataFrames avec pd.merge()
pd.merge() combine deux DataFrames selon une colonne commune — l'équivalent pandas de la classe Client/Commande qui collaborent (vue au premier chapitre), mais appliqué à des tableaux entiers d'un coup.
import pandas as pd
produits = pd.DataFrame({
"produit": ["riz", "huile", "sucre"],
"prix": [5, 8, 3],
})
ventes = pd.DataFrame({
"produit": ["riz", "sucre"],
"quantite": [20, 15],
})
resultat = pd.merge(produits, ventes, on="produit")
print(resultat)
Ce code affiche un DataFrame à quatre colonnes (produit, prix, quantite), mais seulement pour riz et sucre : on="produit" indique la colonne commune servant à faire correspondre les lignes des deux DataFrames. huile, absente de ventes, n'apparaît pas dans le résultat — ce comportement par défaut s'appelle une jointure interne (*inner join*), qui ne garde que les correspondances trouvées dans les deux tableaux.
Pour garder toutes les lignes de produits, même sans vente correspondante (avec des valeurs manquantes NaN à la place), on précise how="left" :
resultat = pd.merge(produits, ventes, on="produit", how="left")
Ce code inclut aussi huile, avec quantite marquée NaN (*Not a Number*, la valeur manquante standard de pandas), faute de vente correspondante.
À vous de jouer : créez deux DataFrames avec une colonne commune, fusionnez-les avec pd.merge(), puis testez how="left" pour comparer le résultat.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 87 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès