Logo
Le Phuc HaiPHD RESEARCHER & FOUNDER
Data Analysis

Python101 - Bài 2: Xử Lý Thang Đo Likert Với Pandas (Quên VLOOKUP Đi)

Dữ liệu khảo sát về thường rất rác: Missing value, thang đo 1-5 lẫn lộn text. Pandas sẽ giúp bạn làm sạch dữ liệu nhanh hơn người yêu cũ trở mặt.

12 min read
Python101 - Bài 2: Xử Lý Thang Đo Likert Với Pandas (Quên VLOOKUP Đi)

Trong nghiên cứu định lượng, dữ liệu thô (Raw Data) từ Google Form về thường rất hầm bà lằng. Ví dụ:
- Cột Giới tính: "Nam", "Male", "M".
- Cột Hài lòng: 1, 2, 3, 4, 5 (nhưng có ô trống).

Dùng Excel filter bằng tay thì đến mùa quýt. Hãy dùng thư viện Pandas.

1. Load dữ liệu

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

2. Xử lý Missing Value (NA)

Quy tắc nghiên cứu (Rule of Thumb):
- Nếu thiếu ít (<5%): Có thể điền giá trị trung bình (Mean Imputation) hoặc Trung vị (Median).
Lưu ý: Cách này nhanh nhưng có thể làm giảm phương sai của dữ liệu. Nếu làm nghiên cứu xịn sò (PhD level), hãy tìm hiểu thuật toán KNN Imputer hoặc MICE.
- Nếu thiếu nhiều (>20%): Cân nhắc xóa luôn cột đó hoặc loại bỏ người trả lời đó.

`df = df.fillna(df.mean())` (Cách "mì ăn liền" phổ biến nhất).

3. Tính điểm trung bình nhân tố (Compute Mean Score)

Bạn có 3 câu hỏi cho biến Hài lòng (SAT1, SAT2, SAT3). Bạn cần tính biến tổng SAT.

`df["SAT"] = df[["SAT1", "SAT2", "SAT3"]].mean(axis=1)`

Góc nhìn khoa học (Scientific View): Về lý thuyết, thang Likert là thang đo thứ bậc (Ordinal), không được cộng trừ nhân chia. Tuy nhiên, trong nghiên cứu thực nghiệm (Applied/Social Science), nếu thang đo có >= 5 điểm, chúng ta tạm chấp nhận coi nó là thang đo khoảng (Interval) để tính toán. Nhưng hãy cẩn thận khi phản biện với các giáo sư Toán thống kê khó tính!

Tags

#Python101#Pandas#Data Cleaning#Likert Scale#Quantitative

About Le Phuc Hai

Expert in Strategic Leadership and Digital Transformation.