Maison >développement back-end >Tutoriel Python >Comment fusionner des DataFrames et inclure des colonnes des deux ?

Comment fusionner des DataFrames et inclure des colonnes des deux ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-02 12:43:031010parcourir

How to Merge DataFrames and Include Columns from Both?

Fusion de DataFrames avec inclusion de colonnes

Lors de la fusion de deux DataFrames, il est courant de conserver les informations du premier tout en incorporant les données du second. Explorons comment y parvenir dans Pandas.

Considérons le scénario suivant :

  • DataFrame df1 contient des informations sur l'âge des individus.
  • DataFrame df2 contient des informations sur le sexe des individus. .

Notre objectif est de remplir df1 avec des informations sexuelles tout en conservant les informations sur les individus non présents dans df2.

Solution

Méthode 1 : Utiliser la fonction de fusion de Pandas avec join gauche

<code class="python">df = df1.merge(df2[['Name', 'Sex']], on='Name', how='left')</code>

Cette opération de fusion rejoint df1 sur la colonne Nom avec df2 tout en conservant toutes les lignes de df1 (en raison de la jointure gauche) et en mettant à jour les valeurs dans Sex le cas échéant.

Méthode 2 : Utilisation de la fonction map de Pandas

<code class="python">df1['Sex'] = df1['Name'].map(df2.set_index('Name')['Sex'])</code>

Cette approche utilise la fonction map pour mapper la colonne Nom de df1 à la colonne Sexe de df2 tout en définissant Name comme index dans df2. Cela correspond efficacement aux individus dans les deux DataFrames, en remplissant les valeurs manquantes avec NaN.

Considérations

S'il y a des valeurs Name en double dans df2, l'approche cartographique peut renvoyer des résultats incohérents. Dans de tels cas, envisagez de dédupliquer df2 ou d'utiliser un mappage basé sur un dictionnaire.

De plus, utilisez la fonction de fusion avec prudence si Name contient des valeurs manquantes, car cela entraînera la suppression des lignes sans correspondance. Si l'intégrité des données est critique, gérez les valeurs manquantes de manière appropriée avant de les fusionner.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn