Maison  >  Article  >  développement back-end  >  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 ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-22 20:51:43549parcourir

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.

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