ÎncepețiÎncepe gratuit

Tratarea duplicatelor

În exercițiul anterior, ai putut verifica că noua actualizare care alimentează ride_sharing conține un bug ce generează atât rânduri duplicate complete, cât și incomplete pentru anumite valori ale coloanei ride_id, cu valori ocazional diferite pentru coloanele user_birth_year și duration.

În acest exercițiu, vei trata aceste rânduri duplicate: mai întâi vei elimina duplicatele complete, apoi vei combina rândurile duplicate incomplete într-unul singur, păstrând media duration și valoarea minimă a user_birth_year pentru fiecare set de rânduri duplicate incomplete.

Acest exercițiu face parte din cursul

Curățarea datelor în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Elimină duplicatele complete din ride_sharing și stochează rezultatele în ride_dup.
  • Creează dicționarul statistics, care conține agregarea minimă pentru user_birth_year și agregarea mean pentru duration.
  • Elimină duplicatele incomplete grupând după ride_id și aplicând agregarea din statistics.
  • Caută din nou duplicate și rulează instrucțiunea assert pentru a verifica eliminarea duplicatelor.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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
Editează și rulează codul