Začněte nyníZačněte zdarma

Ošetření duplicit

V předchozím cvičení jsi ověřil/a, že nová aktualizace přidávaná do ride_sharing obsahuje chybu, která pro některé hodnoty sloupce ride_id generuje jak kompletní, tak nekompletní duplicitní řádky – s občasnými rozdíly v hodnotách sloupců user_birth_year a duration.

V tomto cvičení se těchto duplicitních řádků zbavíš: nejprve odstraníš kompletní duplicity a poté sloučíš nekompletní duplicitní řádky do jednoho, přičemž pro každou skupinu nekompletních duplicit zachováš průměrnou hodnotu duration a minimální hodnotu user_birth_year.

Toto cvičení je součástí kurzu

Čištění dat v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Odstraň kompletní duplicity z ride_sharing a výsledek ulož do ride_dup.
  • Vytvoř slovník statistics, který definuje agregaci minimum pro user_birth_year a agregaci mean (průměr) pro duration.
  • Odstraň nekompletní duplicity tak, že data seskupíš podle ride_id a použiješ agregaci ze slovníku statistics.
  • Znovu vyhledej duplicity a spusť příkaz assert, který ověří, že de-duplikace proběhla správně.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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
Upravit a spustit kód