"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment pouvez-vous combiner deux DataFrames Pandas avec des colonnes qui se chevauchent ?

Comment pouvez-vous combiner deux DataFrames Pandas avec des colonnes qui se chevauchent ?

Publié le 2024-11-12
Parcourir:408

How Can You Combine Two Pandas DataFrames with Overlapping Columns?

Combinaison de 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 :

import pandas as pd

pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')

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 :

pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer', suffixes=('_restaurant_id', '_restaurant_review'))

Avec cette modification, les colonnes étoiles seront renommées 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.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3