Khai Phá Sâu Hơn Dữ Liệu: Thống Kê Mô Tả Với NumPy

Sau khi đã thành thạo việc khởi tạo, cắt gọt và thực hiện các phép toán trên mảng, bước tiếp theo để bạn thực sự "hiểu" dữ liệu của mình chính là Thống kê mô tả (Descriptive Statistics). Trong Data Science, việc nhìn vào hàng ngàn dòng số liệu thô sẽ chẳng mang lại ý nghĩa gì nếu bạn không biết cách tóm tắt chúng thành các con số cốt lõi.
Bài viết này sẽ cung cấp một checklist chi tiết giúp bạn rà soát toàn bộ các kỹ năng thống kê từ cơ bản đến nâng cao trong NumPy, hoàn toàn không lo lỗi hiển thị công thức! 👇
🟦 1. Chỉ số xu hướng trung tâm & Cực trị
Đây là nhóm hàm cơ bản giúp bạn nắm bắt nhanh "trọng tâm" và biên độ của tập dữ liệu:
- Trung bình vs. Trung vị:
- Tính toán mượt mà Giá trị trung bình bằng np.mean() và Trung vị bằng np.median().
- Mẹo nhỏ: Hãy hiểu rõ khi nào nên dùng chỉ số nào — ví dụ, nên ưu tiên dùng trung vị khi tập dữ liệu xuất hiện các phần tử ngoại lai (outlier) quá lớn (như thu nhập, giá nhà) để tránh bị bóp méo kết quả.
- Cực trị của mảng: Dễ dàng tìm ra giá trị lớn nhất bằng np.max() và nhỏ nhất bằng np.min().
- Truy tìm vị trí cực trị (argmax & argmin):
- Sử dụng thành thạo np.argmax() và np.argmin() để lấy ra chỉ số vị trí (index) của phần tử lớn nhất hoặc nhỏ nhất thay vì lấy giá trị của nó. Đây là kỹ năng cực kỳ hữu ích khi bạn cần tìm xem phần tử "đỉnh" hoặc "đáy" nằm ở tọa độ nào trong mảng.
🟩 2. Đo lường độ phân tán & Phân phối
Biết giá trị trung bình là chưa đủ, bạn cần biết các con số đang phân bố cô đặc hay tản mác ra sao:
- Phương sai và Độ lệch chuẩn:
- Tính toán Phương sai bằng np.var() và Độ lệch chuẩn bằng np.std().
- Các chỉ số này giúp bạn đánh giá mức độ "lệch" hay phân tán của dữ liệu xung quanh giá trị trung bình, từ đó nhận diện độ rủi ro hoặc mức độ dao động của dữ liệu.
- Điểm phân vị (Percentiles):
- Sử dụng linh hoạt np.percentile() để tìm các mốc phân vị quan trọng (như 25%, 50%, 75% tương ứng với các tứ phân vị Q1, Q2, Q3).
- Thao tác này giúp bạn xác định nhanh hình dáng phân phối và phát hiện các khoảng tập trung dữ liệu.
🟨 3. Thao tác cấu trúc trên ma trận (Góc nâng cao)
Khi làm việc với dữ liệu đa chiều (2 chiều trở lên), việc tính toán không chỉ diễn ra trên toàn cục mà phải đi theo từng hướng cụ thể:
- Phân biệt và áp dụng tham số axis chính xác:
- Dùng axis=0: Tính toán dọc theo từng cột (Column-wise), kết quả sẽ gộp các hàng lại với nhau.
- Dùng axis=1: Tính toán ngang theo từng hàng (Row-wise), kết quả sẽ gộp các cột lại với nhau.
- Xử lý dữ liệu khuyết thiếu (NaN Safe Functions):
- Trong thực tế, dữ liệu thường bị trống hoặc lỗi (NaN). Thay vì để NumPy báo lỗi hoặc trả về kết quả nan, bạn hãy sử dụng các phiên bản hàm an toàn tương ứng như np.nanmean(), np.nanstd(), np.nanmax(), v.v.
- Các hàm này thông minh tự động bỏ qua các giá trị trống (NaN) để tính toán chính xác trên phần dữ liệu hợp lệ còn lại.
ເຈ 💡 Mẹo nhỏ cho bạn: Thống kê mô tả chính là bước đầu tiên của mọi quy trình Khám phá Dữ liệu (Exploratory Data Analysis - EDA). Hãy mở Jupyter Notebook lên, nạp một tập dữ liệu thực tế và thử áp dụng toàn bộ các hàm trên để xem "bức tranh toàn cảnh" về dữ liệu của bạn nhé!
Bạn đã tích được bao nhiêu dấu [ ] hoàn thành trong checklist này rồi? Hãy để lại bình luận chia sẻ ngay bên dưới nhé! 👇
Bình luận