Bắt đầu ngayBắt đầu miễn phí

Xử lý dữ liệu trùng lặp

Ở bài trước, bạn đã xác nhận rằng bản cập nhật mới đổ vào ride_sharing có một lỗi tạo ra cả các hàng trùng lặp hoàn toàn lẫn không hoàn toàn cho một số giá trị ở cột ride_id, và đôi khi có giá trị lệch ở các cột user_birth_yearduration.

Trong bài này, bạn sẽ xử lý các hàng trùng lặp đó bằng cách trước hết loại bỏ các bản trùng lặp hoàn toàn, sau đó gộp các hàng trùng lặp không hoàn toàn thành một hàng, đồng thời giữ duration trung bình và user_birth_year nhỏ nhất cho mỗi nhóm hàng trùng lặp không hoàn toàn.

Bài tập này là một phần của khóa học

Làm sạch dữ liệu với Python

Xem khóa học

Hướng dẫn bài tập

  • Loại bỏ các bản trùng lặp hoàn toàn trong ride_sharing và lưu kết quả vào ride_dup.
  • Tạo từ điển statistics chứa phép tổng hợp min cho user_birth_yearmean cho duration.
  • Loại bỏ các bản trùng lặp không hoàn toàn bằng cách group theo ride_id và áp dụng phép tổng hợp trong statistics.
  • Tìm trùng lặp lần nữa và chạy câu lệnh assert để xác thực việc khử trùng lặp.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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
Chỉnh sửa và Chạy Mã