Usuwanie duplikatów
W poprzednim ćwiczeniu udało się potwierdzić, że nowa aktualizacja zasilająca ride_sharing zawiera błąd generujący zarówno kompletne, jak i niekompletne zduplikowane wiersze dla niektórych wartości kolumny ride_id – z okazjonalnymi rozbieżnościami w kolumnach user_birth_year i duration.
W tym ćwiczeniu zajmiesz się tymi zduplikowanymi wierszami: najpierw usuniesz kompletne duplikaty, a następnie scalisz niekompletne duplikaty w jeden wiersz, zachowując średnią wartość duration oraz minimalną wartość user_birth_year dla każdego zestawu niekompletnych duplikatów.
To ćwiczenie jest częścią kursu
Czyszczenie danych w Pythonie
Instrukcje do ćwiczenia
- Usuń kompletne duplikaty ze zbioru
ride_sharingi zapisz wyniki w zmiennejride_dup. - Utwórz słownik
statistics, który przechowuje agregację minimalną dlauser_birth_yearoraz agregację mean dladuration. - Usuń niekompletne duplikaty, grupując dane według
ride_idi stosując agregację zdefiniowaną wstatistics. - Znajdź ponownie duplikaty i uruchom instrukcję
assert, aby zweryfikować usunięcie duplikatów.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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