Thiếu dữ liệu (missing data) là vấn đề rất phổ biến khi làm việc với dữ liệu thực tế. Dữ liệu bị thiếu có thể đến từ lỗi thu thập, người dùng không nhập thông tin, hoặc quá trình nhập liệu sai sót. Nếu không xử lý đúng cách, dữ liệu thiếu có thể làm giảm chất lượng mô hình và gây sai lệch kết quả phân tích.
Trước khi đi vào chi tiết, bạn có thể tham khảo bài Tổng hợp các loại tập dữ liệu mở cho đồ án AI để tìm nguồn dữ liệu phong phú, bài Xây dựng mô hình phát hiện bệnh từ ảnh X-quang để hiểu cách xử lý dữ liệu ảnh y tế có missing value, hoặc bài Hướng dẫn xây dựng mô hình dự đoán điểm thi bằng Machine Learning để thấy tầm quan trọng của dữ liệu sạch khi xây dựng mô hình.
Tổng quan về dữ liệu thiếu và Pandas
Trong Pandas, dữ liệu thiếu được biểu diễn bằng giá trị NaN (Not a Number). Các hàm trong Pandas đã được tối ưu để phát hiện và xử lý các giá trị này một cách dễ dàng.
Nguyên nhân dẫn đến dữ liệu thiếu có thể bao gồm như sau:
-
Giá trị không được nhập hoặc bị xóa trong quá trình thu thập.
-
Dữ liệu hợp nhất từ nhiều nguồn với định dạng không đồng nhất.
-
Lỗi khi tải hoặc chuyển đổi dữ liệu từ file khác (CSV, Excel).
Trong bài này, chúng ta sẽ sử dụng bộ dữ liệu mẫu có chứa giá trị thiếu và tìm hiểu các cách xử lý phổ biến như loại bỏ, thay thế, và ước lượng dữ liệu bị thiếu.
Cài đặt và tải dữ liệu mẫu
Chúng ta sử dụng Pandas để thao tác với dữ liệu:
# Cài đặt Pandas nếu chưa có !pip install pandas # Import thư viện import pandas as pd
Tải dữ liệu mẫu từ GitHub: bộ dữ liệu Titanic nổi tiếng, vốn có nhiều giá trị thiếu ở cột Age và Cabin.

