Maison > Article > développement back-end > Comment utiliser Pandas pour gérer les valeurs en double dans les données : une analyse complète des méthodes de déduplication
Analyse complète de la méthode de déduplication Pandas : gérez facilement les valeurs en double dans les données, des exemples de code spécifiques sont nécessaires
Introduction :
Dans le processus d'analyse et de traitement des données, il est souvent constaté que les données contiennent des valeurs en double. Ces valeurs en double peuvent induire en erreur les résultats d'analyse ou affecter l'exactitude des données. La déduplication constitue donc une partie importante du traitement des données. En tant que bibliothèque de traitement de données largement utilisée en Python, Pandas fournit une variété de méthodes de déduplication et peut facilement gérer les valeurs en double dans les données. Cet article analysera les méthodes de déduplication couramment utilisées dans Pandas et donnera des exemples de code spécifiques pour aider les lecteurs à mieux comprendre et appliquer ces méthodes.
1. Méthode drop_duplicates
La méthode drop_duplicates est l'une des méthodes de déduplication les plus couramment utilisées dans Pandas. Il supprime les valeurs en double des données en fonction des colonnes ou des lignes spécifiées. L'utilisation spécifique est la suivante :
df.drop_duplicates(subset=None, keep='first', inplace=False)
Parmi eux, df représente l'ensemble de données à dédupliquer, le sous-ensemble est la colonne ou la ligne spécifiée et la valeur par défaut est Aucune, ce qui signifie que toutes les colonnes sont dédupliquées. Le paramètre keep indique quelle valeur répétée conserver. La valeur par défaut est « first », ce qui signifie conserver la première valeur apparaissant. Vous pouvez également choisir « last », ce qui signifie conserver la dernière valeur apparaissante. Le paramètre inplace indique s'il faut modifier l'ensemble de données d'origine. La valeur par défaut est False, ce qui signifie renvoyer un nouvel ensemble de données dédupliqué.
Exemple spécifique :
Supposons que nous ayons un ensemble de données df contenant des valeurs en double :
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3, 1, 2, 3], 'B': ['a', 'b', 'c', 'a', 'b', 'c']}) print(df)
Les résultats en cours d'exécution sont les suivants :
A B 0 1 a 1 2 b 2 3 c 3 1 a 4 2 b 5 3 c
Nous pouvons utiliser la méthode drop_duplicates pour supprimer les valeurs en double :
df_drop_duplicates = df.drop_duplicates() print(df_drop_duplicates)
Les résultats en cours d'exécution sont les suivants :
A B 0 1 a 1 2 b 2 3 c
D'après les résultats, nous Comme on peut le voir, la méthode drop_duplicates supprime avec succès les valeurs en double dans l'ensemble de données.
2. Méthode dupliquée
La méthode dupliquée est une autre méthode de déduplication couramment utilisée dans Pandas. Contrairement à la méthode drop_duplicates, la méthode dupliquée renvoie une série booléenne pour déterminer si les éléments de chaque ligne ou colonne sont dupliqués. L'utilisation spécifique est la suivante :
df.duplicated(subset=None, keep='first')
Parmi eux, df représente l'ensemble de données à dupliquer, le sous-ensemble est la colonne ou la ligne spécifiée et la valeur par défaut est Aucune, ce qui signifie que toutes les colonnes sont jugées. La signification du paramètre keep est la même que celle de la méthode drop_duplicates.
Exemple spécifique :
Supposons que nous utilisons toujours l'ensemble de données ci-dessus df, nous pouvons utiliser la méthode dupliquée pour déterminer si chaque ligne est répétée :
df_duplicated = df.duplicated() print(df_duplicated)
Les résultats en cours sont les suivants :
0 False 1 False 2 False 3 True 4 True 5 True dtype: bool
Comme le montrent les résultats , les 0ème et 0ème lignes de la série renvoyées 1 et 2 sont fausses, indiquant que ces lignes ne sont pas répétées ; les lignes 3, 4 et 5 sont vraies, indiquant que ces lignes sont répétées.
3. Scénarios d'application des méthodes drop_duplicates et dupliquées
drop_duplicates et des méthodes dupliquées sont largement utilisées dans le nettoyage et l'analyse des données. Les scénarios d'application courants incluent :
Exemple spécifique :
Supposons que nous ayons un ensemble de données de ventes df, qui contient des enregistrements de ventes dans plusieurs villes. Nous souhaitons compter le total des ventes dans chaque ville et supprimer les villes en double. Nous pouvons utiliser le code suivant pour y parvenir :
import pandas as pd df = pd.DataFrame({'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shanghai', 'Beijing'], 'Sales': [1000, 2000, 3000, 1500, 1200]}) df_drop_duplicates = df.drop_duplicates(subset='City') df_total_sales = df.groupby('City')['Sales'].sum() print(df_drop_duplicates) print(df_total_sales)
Les résultats en cours sont les suivants :
City Sales 0 Beijing 1000 1 Shanghai 2000 2 Guangzhou 3000 Sales City Beijing 2200 Guangzhou 3000 Shanghai 3500
Comme le montrent les résultats, nous avons d'abord utilisé la méthode drop_duplicates pour supprimer les villes en double, puis nous avons utilisé les méthodes groupby et sum pour calculer les ventes totales de chaque ville.
Conclusion :
Grâce à l'analyse de cet article, nous comprenons les scénarios d'utilisation et d'application des méthodes de déduplication couramment utilisées drop_duplicates et dupliquées dans Pandas. Ces méthodes peuvent nous aider à gérer facilement les valeurs en double dans les données et à garantir l'exactitude de l'analyse et du traitement des données. Dans les applications pratiques, nous pouvons choisir des méthodes appropriées en fonction de problèmes spécifiques et les combiner avec d'autres méthodes Pandas pour le nettoyage et l'analyse des données.
Exemple de code :
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3, 1, 2, 3], 'B': ['a', 'b', 'c', 'a', 'b', 'c']}) # 使用drop_duplicates方法去重 df_drop_duplicates = df.drop_duplicates() print(df_drop_duplicates) # 使用duplicated方法判断重复值 df_duplicated = df.duplicated() print(df_duplicated) # 应用场景示例 df = pd.DataFrame({'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shanghai', 'Beijing'], 'Sales': [1000, 2000, 3000, 1500, 1200]}) df_drop_duplicates = df.drop_duplicates(subset='City') df_total_sales = df.groupby('City')['Sales'].sum() print(df_drop_duplicates) print(df_total_sales)
Le code ci-dessus est exécuté dans l'environnement Python et le résultat affichera l'ensemble de données dédupliqués et les statistiques de ventes totales.
Références :
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!