Behandlung von Duplikaten
In der letzten Übung konntest du feststellen, dass die neue Aktualisierung, die in ride_sharing
eingespeist wird, einen Fehler enthält, der sowohl vollständige als auch unvollständige doppelte Zeilen für einige Werte der Spalte ride_id
erzeugt, mit gelegentlich abweichenden Werten für die Spalten user_birth_year
und duration
.
In dieser Übung behandelst du die doppelten Zeilen, indem du zuerst die vollständigen Duplikate löschst und dann die unvollständigen doppelten Zeilen zu einer einzigen zusammenfügst, wobei du die durchschnittliche Fahrtdauer (duration
) und den Mindestwert von user_birth_year
für jede Gruppe von unvollständigen doppelten Zeilen beibehältst.
Diese Übung ist Teil des Kurses
Datenbereinigung in Python
Anleitung zur Übung
- Verwirf vollständige Duplikate in
ride_sharing
und speichere die Ergebnisse inride_dup
. - Erstelle das Dictionary
statistics
, das die minimale Aggregation füruser_birth_year
und die mittlere Aggregation fürduration
enthält. - Entferne unvollständige Duplikate, indem du nach
ride_id
gruppierst und die Aggregation instatistics
anwendest. - Finde erneut Duplikate und führe die Anweisung
assert
aus, um die Deduplizierung zu überprüfen.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# 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