Python : Suppression de doublons

Suppression de doublons en Python

Introduction

Les doublons dans les données peuvent causer des problèmes majeurs lors de l’analyse de données. Il est donc important de supprimer les doublons pour obtenir des résultats précis et fiables. Dans cet article, nous allons explorer différentes techniques pour identifier et supprimer les doublons dans Python.

Identifier les doublons

La première étape pour supprimer les doublons est de les identifier. Les doublons peuvent être complets ou partiels, ce qui signifie que toutes les colonnes ne sont pas identiques. Dans Python, il existe plusieurs méthodes pour identifier les doublons, notamment la méthode duplicated(), la méthode drop_duplicates(), set() et frozenset(). Dans cette section, nous allons examiner chacune de ces méthodes en détail.

Supprimer les doublons

Une fois que les doublons ont été identifiés, il est temps de les supprimer. Il existe plusieurs techniques pour supprimer les doublons dans un jeu de données, notamment en utilisant la méthode drop_duplicates(), set() et frozenset(). Dans cette section, nous allons examiner chacune de ces méthodes en détail et comparer leurs avantages et inconvénients.

Avec du code c’est mieux !

Dans l’exemple ci-dessous, nous créons un DataFrame contenant des doublons dans la colonne “Nom”. Ensuite, nous utilisons la méthode duplicated() pour identifier les doublons et stockons le résultat dans une variable “duplicates“. Nous utilisons également la méthode drop_duplicates() pour supprimer les doublons et stocker le résultat dans un nouveau DataFrame df_drop“. Enfin, nous utilisons les méthodes set() et frozenset() pour supprimer les doublons en créant un ensemble de tuples uniques à partir des lignes du DataFrame. Le résultat est stocké dans un nouveau DataFrame df_unique“.

import pandas as pd

# Création d'un DataFrame avec des doublons
data = {'Nom': ['Jean', 'Pierre', 'Marie', 'Luc', 'Jean'],
        'Age': [25, 35, 28, 32, 25],
        'Ville': ['Paris', 'Lyon', 'Marseille', 'Lille', 'Paris']}
df = pd.DataFrame(data)

# Affichage du DataFrame original
print("DataFrame original :")
print(df)

# Identification des doublons
duplicates = df[df.duplicated()]
print("Doublons identifiés :")
print(duplicates)

# Suppression des doublons en utilisant drop_duplicates()
df_drop = df.drop_duplicates()
print("DataFrame sans doublons :")
print(df_drop)

# Suppression des doublons en utilisant set() et frozenset()
df_set = pd.DataFrame([frozenset(row) for row in df.values], columns=df.columns)
df_unique = pd.DataFrame(list(set(tuple(row) for row in df_set.values)), columns=df.columns)
print("DataFrame sans doublons :")
print(df_unique)

Conclusion

Supprimer les doublons dans un jeu de données est crucial pour obtenir des résultats précis et fiables. Dans cet article, nous avons exploré différentes techniques pour identifier et supprimer les doublons dans Python. Nous avons également comparé les différentes méthodes pour supprimer les doublons. En utilisant les méthodes décrites dans cet article, vous pouvez facilement nettoyer vos données et obtenir des résultats précis.