중복 처리하기
직전 연습 문제에서, ride_sharing으로 들어오는 새 업데이트에 버그가 있어 ride_id 열의 일부 값에 대해 완전 중복과 불완전 중복 행이 모두 생성되고, 때때로 user_birth_year와 duration 열의 값이 서로 어긋난다는 것을 확인했어요.
이번 연습에서는 먼저 완전 중복 행을 삭제한 뒤, 불완전 중복 행은 하나로 합치되 각 불완전 중복 묶음마다 duration은 평균값을, user_birth_year는 최솟값을 유지하도록 처리할 거예요.
이 연습은 강의의 일부입니다
Python으로 데이터 정제하기
연습 안내
ride_sharing의 완전 중복을 제거하고 결과를ride_dup에 저장하세요.user_birth_year에는 최솟값,duration에는 평균을 적용하도록 하는statistics딕셔너리를 만드세요.ride_id로 그룹화하고statistics의 집계를 적용해 불완전 중복을 제거하세요.- 중복을 다시 확인한 후
assert문을 실행해 중복 제거가 되었는지 검증하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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