Behandlung von Duplikaten
In der letzten Übung konntest du feststellen, dass das neue Update, welches die Daten für ride_sharing bereitstellt, 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 kleinsten Wert 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_sharingund speichere die Ergebnisse inride_dup. - Erstelle das Dictionary
statistics, das die minimale Aggregation füruser_birth_yearund die durchschnittliche Aggregation fürdurationenthält. - Entferne unvollständige Duplikate, indem du nach
ride_idgruppierst und die Aggregation instatisticsanwendest. - Ermittle erneut Duplikate und führe die Anweisung
assertaus, um die Deduplizierung zu überprüfen.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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