Méthode de comparaison de DataFrame Pandas

PythonPythonBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous allez apprendre à utiliser la méthode compare() de la bibliothèque pandas pour comparer deux DataFrames et identifier leurs différences. La méthode compare() est un moyen pratique de trouver les écarts entre deux DataFrames en montrant les valeurs différentes dans une comparaison côte à côte.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet de notes pour accéder à Jupyter Notebook pour la pratique.

Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.

Importez les bibliothèques requises

Tout d'abord, vous devez importer la bibliothèque pandas pour utiliser la méthode compare(). Exécutez le code suivant :

import pandas as pd

Créez les DataFrames

Ensuite, vous allez créer deux DataFrames pour les comparer. Chaque DataFrame devrait avoir les mêmes étiquettes mais peut avoir des valeurs différentes. Exécutez le code suivant pour créer les DataFrames :

df1 = pd.DataFrame([['Abhishek',100,'Science',90], ['Anurag',101,'Science',85]], columns=['Name', 'Roll No', 'Subject', 'Marks'])
df2 = pd.DataFrame([['Abhishek',100,'Maths',95], ['Anurag',101,'Maths',80]], columns=['Name', 'Roll No', 'Subject', 'Marks'])

Comparez les DataFrames

Maintenant, vous pouvez utiliser la méthode compare() pour comparer les deux DataFrames et afficher les différences. La méthode compare les valeurs entre les deux DataFrames et renvoie un nouveau DataFrame avec les valeurs différentes côte à côte. Exécutez le code suivant :

differences = df1.compare(df2)
print(differences)

Modifiez les DataFrames et comparez-les à nouveau

Vous pouvez modifier les valeurs dans l'un des deux DataFrames et les comparer à nouveau pour voir les différences mises à jour. Exécutez le code suivant pour modifier une valeur dans le second DataFrame :

df2.at[1, 'Marks'] = 85

Ensuite, exécutez à nouveau le code de comparaison de l'Étape 3 pour voir les différences mises à jour.

Spécifiez l'axe d'alignement et l'inclusion de valeurs égales

Vous pouvez également spécifier l'axe d'alignement et l'inclusion de valeurs égales dans le DataFrame résultant. Par défaut, l'axe d'alignement est défini sur 1 (colonnes) et les valeurs égales ne sont pas incluses. Exécutez le code suivant pour démontrer ces options :

differences_axis_0 = df1.compare(df2, align_axis=0)
differences_keep_equal = df1.compare(df2, keep_equal=True)

Récapitulatif

Dans ce laboratoire, vous avez appris à utiliser la méthode compare() de la bibliothèque pandas pour comparer deux DataFrames. Cette méthode vous permet d'identifier les différences entre les DataFrames en affichant les valeurs différentes côte à côte. Vous avez également appris à spécifier l'axe d'alignement et l'inclusion de valeurs égales dans le DataFrame résultant. Maintenant, vous pouvez utiliser ces connaissances pour comparer et analyser facilement les différences entre les jeux de données.