"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 comparer efficacement les DataFrames côte à côte pour une analyse approfondie des changements ?

Comment comparer efficacement les DataFrames côte à côte pour une analyse approfondie des changements ?

Publié le 2024-11-01
Parcourir:709

How to Efficiently Compare DataFrames Side-by-Side for In-depth Change Analysis?

Comparez les DataFrames côte à côte pour une analyse complète des changements

Pour mettre en évidence les écarts entre deux dataframes, il existe une méthode efficace qui élimine le besoin pour des comparaisons laborieuses ligne par ligne et colonne par colonne. En tirant parti des fonctions spécifiques de Python Pandas, il est possible d'identifier les modifications dans différents types de données (par exemple, int, float, boolean, string) et de les présenter dans un format de tableau HTML intuitif.

Pour commencer, déterminez s'il y en a. les lignes ont changé à l'aide de la fonction booléenne (df1 != df2).any(1). Ensuite, pour identifier les entrées spécifiques qui ont été modifiées, utilisez ne_stacked = (df1 != df2).stack() et filtrez les valeurs non modifiées en utilisant changes = ne_stacked[ne_stacked].

Pour obtenir les entrées réellement modifiées. valeurs, incorporez difference_locations = np.where(df1 != df2), qui identifie les emplacements des données modifiées. Extrayez les valeurs de la trame de données d'origine (df1) à ces emplacements en utilisant changes_from = df1.values[difference_locations]. De même, extrayez les valeurs correspondantes du deuxième dataframe (df2) en utilisant changes_to = df2.values[difference_locations].

Pour présenter les différences de manière exhaustive, construisez un DataFrame en combinant changé_from et changé_to en tant que colonnes et en définissant l'index pour correspondre à la variable modifiée. Ce DataFrame fournira une vue claire côte à côte des modifications, mettant en évidence à la fois les valeurs originales et mises à jour pour chaque point de données.

Déclaration de sortie Cet article est réimprimé à l'adresse : 1729598716. En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
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