시작하기무료로 시작하기

중복 처리하기

직전 연습 문제에서, ride_sharing으로 들어오는 새 업데이트에 버그가 있어 ride_id 열의 일부 값에 대해 완전 중복과 불완전 중복 행이 모두 생성되고, 때때로 user_birth_yearduration 열의 값이 서로 어긋난다는 것을 확인했어요.

이번 연습에서는 먼저 완전 중복 행을 삭제한 뒤, 불완전 중복 행은 하나로 합치되 각 불완전 중복 묶음마다 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
코드 편집 및 실행