CommencezCommencez gratuitement

Traiter les doublons

Dans le dernier exercice, vous avez pu confirmer que la nouvelle mise à jour alimentant ride_sharing contient un bogue qui génère, pour certaines valeurs de la colonne ride_id, des lignes dupliquées complètes et incomplètes, avec à l’occasion des écarts dans les colonnes user_birth_year et duration.

Dans cet exercice, vous allez traiter ces lignes dupliquées en supprimant d’abord les doublons complets, puis en fusionnant les doublons incomplets en une seule ligne tout en conservant la duration moyenne et le user_birth_year minimal pour chaque ensemble de doublons incomplets.

Cette activité fait partie du cours

Nettoyage des données en Python

Voir le cours

Instructions de l’exercice

  • Supprimez les doublons complets dans ride_sharing et enregistrez le résultat dans ride_dup.
  • Créez le dictionnaire statistics qui contient l’agrégation minimale pour user_birth_year et l’agrégation mean pour duration.
  • Supprimez les doublons incomplets en groupant par ride_id et en appliquant l’agrégation définie dans statistics.
  • Repérez à nouveau les doublons et exécutez l’instruction assert pour vérifier la déduplication.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Drop complete duplicates from ride_sharing
ride_dup = ____.____()

# Create statistics dictionary for aggregation function
statistics = {'user_birth_year': ____, 'duration': ____}

# Group by ride_id and compute new statistics
ride_unique = ride_dup.____('____').____(____).reset_index()

# Find duplicated values again
duplicates = ride_unique.____(subset = 'ride_id', keep = False)
duplicated_rides = ride_unique[duplicates == True]

# Assert duplicates are processed
assert duplicated_rides.shape[0] == 0
Modifier et exécuter le code