Combiner des trames de données Pandas : rejoindre sur une colonne commune
Joinder est une opération essentielle pour fusionner des trames de données basées sur des attributs communs. Cette question examine le problème de la combinaison de deux trames de données pandas : restaurant_ids_dataframe et restaurant_review_frame.
L'utilisateur tente d'utiliser la méthode DataFrame.join() pour effectuer une jointure gauche à l'aide de la colonne business_id. Cependant, une erreur se produit en raison du chevauchement des colonnes (business_id, stars et type). Pour résoudre ce problème, nous pouvons utiliser la fonction de fusion à la place :
<code class="python">import pandas as pd pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')</code>
Le paramètre on spécifie le nom du champ utilisé pour la jointure, tandis que le paramètre how définit le type de jointure (externe, interne, gauche ou droite). ). Dans ce cas, external est sélectionné pour une union de clés des deux blocs de données.
Notez que les deux blocs de données contiennent une colonne nommée étoiles. Par défaut, l'opération de fusion ajoute des suffixes aux noms de colonnes (star_x et star_y). Pour personnaliser ces suffixes, nous pouvons utiliser l'argument mot-clé suffixes :
<code class="python">pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer', suffixes=('_restaurant_id', '_restaurant_review'))</code>
Avec cette modification, les colonnes étoiles seront renommées en star_restaurant_id et star_restaurant_review. En tirant parti de la fonction de fusion et en configurant de manière appropriée le type de jointure et les suffixes de colonne, nous pouvons réussir à combiner les deux blocs de données en fonction de leur colonne business_id partagée.
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!