Làm sạch dữ liệu

Do Kho: Cơ bản Thoi Gian Doc: 10 phut

Tại sao dữ liệu không bao giờ hoàn hảo

Mọi tập dữ liệu bạn gặp trong thực tế đều có vấn đề. Người trả lời bỏ qua câu hỏi. Cảm biến hỏng và ghi giá trị bất khả thi. Bảng tính được sao chép với hàng trùng lặp. Ai đó gõ "N/A" vào ô số. Ngày hiển thị "03/04/2025" và không rõ là 3 tháng 4 hay 4 tháng 3.

Làm sạch dữ liệu là quá trình tìm và sửa các vấn đề này trước khi phân tích. Đây không phải công việc hào nhoáng, nhưng có thể nói là bước quan trọng nhất trong mọi phân tích. Các nhà khoa học dữ liệu có kinh nghiệm ước tính 60-80% thời gian dành cho làm sạch và chuẩn bị dữ liệu. Bỏ qua bước này, kết quả có thể vô nghĩa - hoặc tệ hơn, sai một cách tự tin.

60 Làm sạch 20 Phân tích 10 Báo cáo 10 Thu thập

Biểu đồ trên cho thấy phân bổ thời gian điển hình trong dự án dữ liệu. Làm sạch chiếm phần lớn khối lượng công việc, đó là lý do học làm tốt mang lại lợi ích to lớn.

Xử lý giá trị thiếu

Giá trị thiếu là vấn đề chất lượng dữ liệu phổ biến nhất. Khách hàng để trống trường thu nhập. Trạm thời tiết ngoại tuyến một ngày. Bệnh nhân bỏ lỡ cuộc hẹn tái khám. Câu hỏi là: bạn làm gì?

Có nhiều lựa chọn, mỗi cái có đánh đổi. Bạn có thể xóa hàng có giá trị thiếu - đơn giản nhưng thu nhỏ tập dữ liệu và có thể tạo sai lệch nếu sự thiếu không ngẫu nhiên (ví dụ, người thu nhập cao có thể bỏ qua câu hỏi thu nhập nhiều hơn). Bạn có thể điền vào (nội suy) giá trị thiếu bằng trung bình, trung vị, hoặc mô hình dự đoán phức tạp hơn. Hoặc có thể đánh dấu giá trị thiếu và đưa sự thiếu hụt thành biến riêng trong phân tích.

Cách tiếp cận đúng phụ thuộc vào mức độ thiếu và lý do. Nếu chỉ 2% hàng có giá trị thiếu và chúng ngẫu nhiên, xóa thường chấp nhận được. Nếu 30% cột thiếu, xóa sẽ mất quá nhiều dữ liệu và cần nội suy hoặc cách phân tích khác.

Phát hiện và loại bỏ trùng lặp

Bản ghi trùng lặp có thể phóng đại kết quả và bóp méo mọi thống kê. Nếu giao dịch của khách hàng xuất hiện hai lần trong cơ sở dữ liệu, bạn sẽ đếm thừa doanh thu và ước tính quá số giao dịch. Trùng lặp xâm nhập qua hợp nhất dữ liệu, gửi biểu mẫu lại, lỗi hệ thống và nhập dữ liệu thủ công.

Tìm trùng lặp không phải lúc nào cũng đơn giản. Trùng lặp chính xác (hàng giống hệt) dễ phát hiện. Nhưng "Nguyễn Văn A" ở "123 Lý Thường Kiệt" và "Nguyen Van A" ở "123 Ly Thuong Kiet" thì sao? Đây có thể là cùng một người với biến thể nhỏ. Kỹ thuật khớp mờ giúp xác định gần-trùng lặp, nhưng cần phán đoán về mức tương tự cần thiết trước khi hợp nhất.

10500 Trước làm sạch 420 Trùng lặp đã xóa 10080 Sau làm sạch

Xử lý ngoại lệ

Ngoại lệ là giá trị khác biệt đáng kể so với phần còn lại. Lương $5.000.000 trong tập dữ liệu nhân viên cấp trung. Nhiệt độ -40 độ ở Miami tháng Bảy. Phiên web kéo dài 72 giờ.

Câu hỏi quan trọng với ngoại lệ là chúng hợp lệ hay lỗi. Lương CEO $5 triệu là thật - chỉ đại diện cho tổng thể khác. Nhiệt độ -40 ở Miami gần như chắc chắn là lỗi cảm biến. Phiên web 72 giờ có thể là ai đó để tab mở.

Với lỗi, sửa hoặc xóa là phù hợp. Với ngoại lệ hợp lệ, bạn có lựa chọn: giữ lại và dùng thống kê vững (như trung vị thay vì trung bình), cắt ngưỡng hợp lý (gọi là winsorize), hoặc phân tích riêng. Đừng bao giờ tự động xóa ngoại lệ chỉ vì chúng bất thường - luôn tìm hiểu lý do trước.

Vấn đề kiểu dữ liệu

Máy tính xử lý số, văn bản, ngày và danh mục khác nhau. Nếu cột số vô tình chứa giá trị văn bản (như "N/A" hay "Chờ xác nhận"), phép tính sẽ thất bại. Nếu ngày được lưu không nhất quán (một số là "2025-03-15" và số khác là "15/03/2025"), sắp xếp và lọc sẽ hỏng. Nếu danh mục viết khác nhau ở các hàng ("Việt Nam", "VN", "Viet Nam"), phần mềm sẽ coi đó là ba nhóm riêng.

Làm sạch kiểu dữ liệu bao gồm chuẩn hóa định dạng, chuyển chuỗi thành số khi phù hợp, phân tích ngày thành định dạng thống nhất, và hài hòa nhãn danh mục. Tẻ nhạt nhưng thiết yếu. Một giá trị văn bản lạc trong cột số có thể làm sập toàn bộ quy trình phân tích.

Những cạm bẫy phổ biến

Ngay cả phân tích viên có kinh nghiệm cũng mắc lỗi khi làm sạch dữ liệu. Cạm bẫy phổ biến là làm sạch dữ liệu gốc mà không lưu bản sao. Luôn làm việc trên bản sao. Một lỗi khác là làm sạch quá mức - xóa quá nhiều hàng và giá trị đến mức dữ liệu còn lại không còn đại diện. Lỗi thứ ba là làm sạch không nhất quán - áp dụng quy tắc khác nhau cho các phần khác nhau mà không ghi chép lý do.

Phòng thủ tốt nhất là giữ nhật ký làm sạch: ghi lại mọi thay đổi, lý do và số bản ghi bị ảnh hưởng. Điều này làm công việc tái tạo được và kiểm tra được. Nếu ai đó thắc mắc kết quả, bạn có thể chỉ vào nhật ký và cho thấy chính xác điều gì đã xảy ra với dữ liệu thô trước khi phân tích.

Điểm chính

Làm sạch dữ liệu là nền tảng không hào nhoáng mà mọi phân tích đáng tin cậy đều được xây dựng trên đó. Xử lý giá trị thiếu chu đáo, loại bỏ trùng lặp cẩn thận, tìm hiểu ngoại lệ trước khi xóa, và chuẩn hóa kiểu dữ liệu nhất quán. Luôn làm việc trên bản sao, ghi lại mọi thay đổi, và nhớ rằng: thời gian đầu tư vào làm sạch dữ liệu sẽ cứu bạn khỏi rút ra kết luận mà dữ liệu thực sự không hỗ trợ.