Maison >développement back-end >Tutoriel Python >Comment combiner des DataFrames Pandas basés sur une colonne partagée : un guide pour `join()` et `merge()`

Comment combiner des DataFrames Pandas basés sur une colonne partagée : un guide pour `join()` et `merge()`

Barbara Streisand
Barbara Streisandoriginal
2024-10-24 22:10:02274parcourir

How to Combine Pandas DataFrames Based on a Shared Column: A Guide to `join()` and `merge()`

Combiner des trames de données Pandas sur une colonne partagée : un guide complet

Introduction

La combinaison de données de plusieurs trames de données est une tâche courante dans l'analyse des données . Pandas propose plusieurs méthodes pour y parvenir, notamment les fonctions join() et merge(). Cet article montre comment utiliser ces fonctions pour combiner deux blocs de données partageant une colonne commune.

Utilisation de la fonction join()

La fonction join() effectue une jointure interne par défaut, ce qui signifie il ne conserve que les lignes qui ont des valeurs correspondantes dans la colonne de jointure. Dans l'exemple fourni, la fonction join() ne peut pas être utilisée car restaurant_ids_dataframe et restaurant_review_frame ont des noms de colonnes qui se chevauchent (étoiles et type), comme l'indique le message d'erreur :

Exception: columns overlap: Index([business_id, stars, type], dtype=object)

Utilisation de la fonction merge()

La fonction merge() offre une plus grande flexibilité pour combiner des trames de données. Pour effectuer une jointure externe, qui conserve toutes les lignes des deux blocs de données, utilisez le paramètre how='outer' :

<code class="python">import pandas as pd
pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')</code>

Par défaut, merge() utilise les suffixes ('_x', '_y' ) pour faire la distinction entre les colonnes portant des noms en double. Pour personnaliser les suffixes, transmettez une valeur au paramètre suffixes, comme indiqué ci-dessous :

<code class="python">pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer', suffixes=('_restaurant_id', '_restaurant_review'))</code>

Conclusion

Les fonctions join() et merge() peuvent être utilisées pour combiner des trames de données sur une colonne commune. Comprendre les différences entre ces fonctions est crucial pour obtenir le comportement de jointure souhaité. La fonction merge() offre plus de flexibilité, notamment la possibilité d'effectuer des jointures externes et de personnaliser les suffixes de colonnes. En maîtrisant ces techniques, vous pouvez combiner efficacement des blocs de données pour extraire des informations significatives de vos ensembles de données.

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