Wilcoxon và Friedman: kiểm định phi tham số cho dữ liệu ghép cặp/lặp lại là Bài 32 của chuyên đề SPSS trong phân tích dữ liệu BĐS. Dùng Wilcoxon signed-rank cho hai phép đo liên quan và Friedman cho từ ba phép đo/điều kiện liên quan; đọc ranks, ties, omnibus và hậu kiểm đúng thiết kế.
Biên soạn: ThS. Nguyễn Mạnh Hùng
GV. Khoa QLĐĐ&BĐS – ĐH Nông Lâm TP.HCM
Email: nguyenmanhhung@hcmuaf.edu.vn
Cập nhật 01/10/2026: Nội dung kỹ thuật đối chiếu với IBM SPSS Statistics 31. Tên menu và một số bảng Output có thể khác nhẹ theo bản build/ngôn ngữ giao diện; khi khác cần đối chiếu tài liệu chính thức.
Lưu ý: dữ liệu và tình huống BĐS trong bài nếu không nêu nguồn cụ thể đều là giả lập phục vụ giảng dạy. Tương quan/liên hệ thống kê không tự chứng minh quan hệ nhân quả.
Mục tiêu học tập
- Nhận diện đúng loại biến và thiết kế dữ liệu trước khi chọn thủ tục.
- Hiểu bản chất thống kê của hệ số/kiểm định trong bài, không chỉ biết bấm menu.
- Thực hiện được trên SPSS và lưu Syntax để có thể chạy lại.
- Đọc Output theo thứ tự: mô tả → điều kiện/giả định → hệ số/kiểm định → khoảng tin cậy → diễn giải.
- Viết kết luận trong bối cảnh BĐS mà không vượt quá bằng chứng.
Vị trí của bài trong mạch học
Bài thuộc Chương 4 – Kiểm định khác biệt giữa các nhóm. Bài 31–32 hoàn thiện nhánh phi tham số để sinh viên biết xử lý nhóm độc lập và dữ liệu ghép cặp/lặp lại mà không biến kiểm định phi tham số thành lựa chọn tự động mỗi khi normality test cho p nhỏ.
Related samples xuất phát từ thiết kế
Cùng người/cùng tài sản đo nhiều lần tạo dữ liệu phụ thuộc.
Không dùng Mann–Whitney/Kruskal–Wallis cho dữ liệu này.
Cách kiểm tại lớp: hãy chỉ ra biến nào đang được phân tích, mỗi biến thuộc mức đo nào, mỗi dòng dữ liệu đại diện cho ai/cái gì, và điều kiện nào khiến kết luận thay đổi. Nếu chưa trả lời được bốn câu này, chưa nên đọc p-value.
Wilcoxon cho hai phép đo liên quan
Ví dụ điểm trước–sau hoặc giá rao–giá nhận được của cùng BĐS.
IBM Two-Related-Samples dùng biến số có thể sắp thứ tự.
Dấu vết cần lưu: giữ lại Syntax, bảng Output chính, số trường hợp hợp lệ, quy tắc missing và ít nhất một biểu đồ/bảng mô tả phù hợp. Mục tiêu là để người khác có thể chạy lại và biết vì sao chọn phương pháp đó.
Wilcoxon dùng paired differences
Positive/negative ranks cho hướng thay đổi; ties là difference=0.
Mean rank không phải mức tăng trung bình theo đơn vị gốc.
Cách kiểm tại lớp: hãy chỉ ra biến nào đang được phân tích, mỗi biến thuộc mức đo nào, mỗi dòng dữ liệu đại diện cho ai/cái gì, và điều kiện nào khiến kết luận thay đổi. Nếu chưa trả lời được bốn câu này, chưa nên đọc p-value.
Symmetry của differences
IBM nêu paired differences được giả định đối xứng cho Wilcoxon signed-rank.
Nếu symmetry rất kém, Sign test là lựa chọn đơn giản hơn.
Dấu vết cần lưu: giữ lại Syntax, bảng Output chính, số trường hợp hợp lệ, quy tắc missing và ít nhất một biểu đồ/bảng mô tả phù hợp. Mục tiêu là để người khác có thể chạy lại và biết vì sao chọn phương pháp đó.
Friedman cho ba điều kiện trở lên
Ví dụ cùng khách chấm ba phương án.
Friedman xếp hạng trong từng case rồi kiểm difference giữa conditions.
Cách kiểm tại lớp: hãy chỉ ra biến nào đang được phân tích, mỗi biến thuộc mức đo nào, mỗi dòng dữ liệu đại diện cho ai/cái gì, và điều kiện nào khiến kết luận thay đổi. Nếu chưa trả lời được bốn câu này, chưa nên đọc p-value.
Missing có thể làm mất block
Case thiếu một condition có thể không đóng góp đầy đủ tùy procedure.
Báo complete cases.
Dấu vết cần lưu: giữ lại Syntax, bảng Output chính, số trường hợp hợp lệ, quy tắc missing và ít nhất một biểu đồ/bảng mô tả phù hợp. Mục tiêu là để người khác có thể chạy lại và biết vì sao chọn phương pháp đó.
Friedman significant là omnibus
p nhỏ chỉ nói ít nhất một condition khác.
Cần pairwise comparisons có điều chỉnh.
Cách kiểm tại lớp: hãy chỉ ra biến nào đang được phân tích, mỗi biến thuộc mức đo nào, mỗi dòng dữ liệu đại diện cho ai/cái gì, và điều kiện nào khiến kết luận thay đổi. Nếu chưa trả lời được bốn câu này, chưa nên đọc p-value.
New dialogs và Legacy dialogs khác nhau
Nonparametric Tests mới có thể cho pairwise comparisons; Legacy thường cho ranks/test statistics cơ bản.
Phải nói rõ giao diện đang dùng.
Dấu vết cần lưu: giữ lại Syntax, bảng Output chính, số trường hợp hợp lệ, quy tắc missing và ít nhất một biểu đồ/bảng mô tả phù hợp. Mục tiêu là để người khác có thể chạy lại và biết vì sao chọn phương pháp đó.
Exact/Monte Carlo không phải lúc nào có
Tùy add-on/hệ điều hành/cấu hình.
Không chép Exact Sig. nếu Output không có.
Cách kiểm tại lớp: hãy chỉ ra biến nào đang được phân tích, mỗi biến thuộc mức đo nào, mỗi dòng dữ liệu đại diện cho ai/cái gì, và điều kiện nào khiến kết luận thay đổi. Nếu chưa trả lời được bốn câu này, chưa nên đọc p-value.
Mô tả gốc vẫn cần
Báo median/IQR hoặc phân bố từng thời điểm.
Rank test không trả lời trực tiếp tăng bao nhiêu đơn vị.
Dấu vết cần lưu: giữ lại Syntax, bảng Output chính, số trường hợp hợp lệ, quy tắc missing và ít nhất một biểu đồ/bảng mô tả phù hợp. Mục tiêu là để người khác có thể chạy lại và biết vì sao chọn phương pháp đó.
Effect size cần định nghĩa
Nếu dùng r=Z/sqrt(N) hoặc measure khác phải định nghĩa N/quy ước.
Không suy effect size từ p.
Cách kiểm tại lớp: hãy chỉ ra biến nào đang được phân tích, mỗi biến thuộc mức đo nào, mỗi dòng dữ liệu đại diện cho ai/cái gì, và điều kiện nào khiến kết luận thay đổi. Nếu chưa trả lời được bốn câu này, chưa nên đọc p-value.
Wilcoxon hay paired t-test
Xem distribution of differences, scale, N, outlier và mục tiêu.
Không chọn theo p-value mong muốn.
Dấu vết cần lưu: giữ lại Syntax, bảng Output chính, số trường hợp hợp lệ, quy tắc missing và ít nhất một biểu đồ/bảng mô tả phù hợp. Mục tiêu là để người khác có thể chạy lại và biết vì sao chọn phương pháp đó.
Bộ dữ liệu thực hành xuyên suốt
Các ví dụ dùng một cấu trúc dữ liệu BĐS thống nhất. Trong bài thật có thể đổi tên biến, nhưng không được đổi bản chất mức đo. Mã category lưu bằng số vẫn là Nominal/Ordinal nếu ý nghĩa của nó là category.
| Biến | Mức đo | Ý nghĩa/đơn vị | Vai trò minh họa |
|---|---|---|---|
| gia_m2 | Scale | Đơn giá rao, triệu đồng/m² | Biến giá |
| dien_tich | Scale | Diện tích, m² | Thuộc tính vật lý |
| khoang_cach_tam | Scale | Khoảng cách tới trung tâm, km | Vị trí |
| diem_tien_ich | Scale | Điểm tổng hợp tiện ích 0–100 | Tiện ích |
| khu_vuc | Nominal | 1=Trung tâm; 2=Cận trung tâm; 3=Ngoại vi | Nhóm vị trí |
| loai_bds | Nominal | 1=Căn hộ; 2=Nhà phố; 3=Đất ở | Loại hình |
| phap_ly_day_du | Nominal | 0=Chưa đầy đủ; 1=Đầy đủ | Biến phân loại |
| muc_hai_long | Ordinal | 1–5 | Biến thứ bậc |
| diem_truoc | Scale | Điểm trước, 0–100 | Đo lặp |
| diem_sau | Scale | Điểm sau, 0–100 | Đo lặp |
| diem_t3 | Scale | Điểm lần 3, 0–100 | Đo lặp nhiều lần |
Cú pháp tham khảo
Sinh viên có thể thao tác bằng menu, nhưng nên bấm Paste để lưu Syntax. Syntax đặc biệt cần thiết khi có nhiều biến, nhiều nhóm, pairwise/listwise missing hoặc các tùy chọn CI/Statistics.
NPAR TESTS /WILCOXON=diem_truoc WITH diem_sau (PAIRED) /MISSING ANALYSIS. NPAR TESTS /FRIEDMAN=diem_truoc diem_sau diem_t3 /MISSING ANALYSIS.Tình huống thực hành BĐS
Cùng 120 khách chấm ba phương án căn hộ. Friedman p<0,05 cho thấy ít nhất một phương án khác về ranks; nhóm dùng pairwise có điều chỉnh và báo median/IQR từng phương án.
Trong tình huống trên, không được chuyển trực tiếp từ bảng Sig. sang kết luận. Cần đối chiếu mô tả dữ liệu, hình dạng phân bố/bảng chéo, số quan sát, case bất thường và ý nghĩa nghiệp vụ. Một kết quả thống kê chính xác về tính toán vẫn có thể bị diễn giải sai nếu sample, biến hoặc câu hỏi nghiên cứu sai.
Ma trận lựa chọn nhanh
| Tình huống | Cách hiểu/công cụ | Mục tiêu | Điểm phải kiểm |
|---|---|---|---|
| 2 related | Wilcoxon | Paired ranks | Symmetry differences |
| ≥3 related | Friedman | Repeated ranks | Complete blocks |
| Difference=0 | Tie | Không rank dương/âm | Ghi ties |
| Friedman p<0,05 | Omnibus | Ít nhất một khác | Cần pairwise |
| Sign test | Paired direction | Ít giả định magnitude | Ít thông tin |
Quy trình 12 bước áp dụng
- Viết câu hỏi nghiên cứu bằng lời trước khi mở Analyze.
- Xác định đơn vị quan sát và thiết kế độc lập/ghép cặp/lặp lại.
- Kiểm Type, Values, Missing, Measure và đơn vị của các biến.
- Kiểm trạng thái Filter, Split File và Weight Cases.
- Chạy Frequencies/Descriptives/Explore/Crosstabs phù hợp.
- Kiểm các case bất thường bằng ID và dữ liệu nguồn.
- Chọn hệ số/kiểm định theo measurement level và hình dạng quan hệ.
- Dùng Paste để lưu Syntax và ghi rõ tùy chọn.
- Đọc N và thống kê mô tả trước hệ số/kiểm định.
- Đọc coefficient/test statistic cùng CI và p-value nếu có.
- Đánh giá độ lớn thực tế/effect size, không chỉ significance.
- Lưu Output, Syntax, data version và decision log.
Đọc Output theo thứ tự để tránh sai logic
- Đọc N hợp lệ và missing.
- Đọc mô tả gốc: mean/median/IQR hoặc count/%.
- Kiểm plot/table diagnostics liên quan.
- Đọc hệ số hoặc test statistic.
- Đọc Confidence Interval nếu thủ tục hỗ trợ.
- Đọc p-value sau khi đã biết coefficient và sample.
- Đối chiếu với câu hỏi ban đầu.
- Viết giới hạn: association không đồng nghĩa causation.
Bài thực hành
Tạo ba thời điểm cho cùng 100 case, chạy Wilcoxon T1–T2 và Friedman T1–T2–T3; báo medians và hậu kiểm.
Sản phẩm sinh viên phải nộp
- Output Wilcoxon
- Output Friedman
- Bảng median/IQR
- Complete-case note
- Pairwise report
Những lỗi thường gặp
- Wilcoxon cho nhóm độc lập
- Không kiểm difference
- Nhầm rank với đơn vị gốc
- Friedman significant=mọi cặp khác
- Không adjust pairwise
- Không báo missing blocks
- Gọi exact khi không có
- Effect size không định nghĩa
Lỗi 1 – Wilcoxon cho nhóm độc lập: tạo một bản dữ liệu hoặc Output nhỏ minh họa lỗi này, sau đó sửa và ghi rõ điểm nào trong kết quả thay đổi. Cách học này giúp phân biệt lỗi thao tác, lỗi thiết kế và lỗi diễn giải.
Lỗi 2 – Không kiểm difference: tạo một bản dữ liệu hoặc Output nhỏ minh họa lỗi này, sau đó sửa và ghi rõ điểm nào trong kết quả thay đổi. Cách học này giúp phân biệt lỗi thao tác, lỗi thiết kế và lỗi diễn giải.
Lỗi 3 – Nhầm rank với đơn vị gốc: tạo một bản dữ liệu hoặc Output nhỏ minh họa lỗi này, sau đó sửa và ghi rõ điểm nào trong kết quả thay đổi. Cách học này giúp phân biệt lỗi thao tác, lỗi thiết kế và lỗi diễn giải.
Lỗi 4 – Friedman significant=mọi cặp khác: tạo một bản dữ liệu hoặc Output nhỏ minh họa lỗi này, sau đó sửa và ghi rõ điểm nào trong kết quả thay đổi. Cách học này giúp phân biệt lỗi thao tác, lỗi thiết kế và lỗi diễn giải.
Lỗi 5 – Không adjust pairwise: tạo một bản dữ liệu hoặc Output nhỏ minh họa lỗi này, sau đó sửa và ghi rõ điểm nào trong kết quả thay đổi. Cách học này giúp phân biệt lỗi thao tác, lỗi thiết kế và lỗi diễn giải.
Phản biện chéo tại lớp
Nhóm phản biện phải hỏi: coefficient/test này đo cái gì; điều kiện nào quan trọng; N thực sự là bao nhiêu; mẫu số/tập case có thay đổi vì missing không; có outlier/cluster/ties không; và kết luận đang mô tả association hay ngầm chuyển thành causation? Người trình bày phải trỏ đúng bảng/plot trong Output để trả lời.
Nếu hai phương pháp cho kết quả khác nhau, không được chọn phương pháp cho p-value đẹp hơn. Phải quay lại mức đo, hình dạng quan hệ, giả định và câu hỏi nghiên cứu để chọn method chính; phương pháp còn lại có thể dùng như sensitivity analysis nếu hợp lý.
Tình huống kiểm tra cuối bài
Giảng viên cung cấp một tệp 400–1.500 case có ít nhất một bẫy liên quan trực tiếp đến Wilcoxon và Friedman: kiểm định phi tham số cho dữ liệu ghép cặp/lặp lại: mã nominal bị khai Scale, một outlier hợp lệ, cluster theo khu vực, missing không đồng đều, nhiều ties hoặc N rất lớn làm p nhỏ. Sinh viên phải phát hiện bẫy trước khi viết kết luận.
Phiếu tự kiểm
- Tôi có biết từng biến là Nominal, Ordinal hay Scale không?
- Thiết kế là độc lập hay dữ liệu liên quan/lặp lại?
- N hợp lệ có đúng dự kiến không?
- Missing được xử lý pairwise/listwise/analysis như thế nào?
- Tôi đã xem biểu đồ/bảng mô tả trước hệ số hoặc p-value chưa?
- Outlier/cluster/ties có ảnh hưởng cách chọn phương pháp không?
- Hệ số đang đo tuyến tính, đơn điệu, thứ hạng hay liên hệ category?
- Confidence Interval có được đọc nếu có không?
- Tôi có đang nhầm p-value với độ lớn hiệu ứng không?
- Tôi có đang biến correlation/association thành causal claim không?
- Syntax có đủ để người khác chạy lại không?
- File sau phân tích có version và decision log không?
Ghi nhớ trong 30 giây
- Wilcoxon cho hai related samples
- Friedman cho ≥3 related conditions
- Wilcoxon chú ý symmetry differences
- Friedman là omnibus
- Rank test không thay mô tả chênh gốc
Nguồn tham khảo
Nguồn kỹ thuật chính là IBM SPSS Statistics 31. Khi menu hoặc tùy chọn khác bài, cần kiểm đúng phiên bản đang dùng. Trong nghiên cứu chính thức, kết quả SPSS phải được đặt trong thiết kế nghiên cứu và tài liệu phương pháp phù hợp.
- https://www.ibm.com/docs/en/spss-statistics/31.0.0?topic=tests-two-related-samples
- https://www.ibm.com/docs/en/SSLVMB_31.0.0/pdf/IBM_SPSS_Statistics_Base.pdf
- https://www.ibm.com/support/pages/source-post-hoc-tests-friedman-nonparametric-tests
Bài tiếp theo
Pearson Correlation: đo mức liên hệ tuyến tính giữa hai biến BĐS.
Bài luyện tập mở rộng
Luyện tập 1
Tạo difference đối xứng và lệch.
Yêu cầu nộp: Output/Syntax, một đoạn giải thích 100–150 từ và một phép kiểm đối chứng. Nếu có correlation hoặc p-value, phải báo coefficient/test statistic và N; không được chỉ nộp dấu *.
Luyện tập 2
Tạo nhiều ties.
Yêu cầu nộp: Output/Syntax, một đoạn giải thích 100–150 từ và một phép kiểm đối chứng. Nếu có correlation hoặc p-value, phải báo coefficient/test statistic và N; không được chỉ nộp dấu *.
Luyện tập 3
Chạy Friedman 4 conditions rồi đếm pairs.
Yêu cầu nộp: Output/Syntax, một đoạn giải thích 100–150 từ và một phép kiểm đối chứng. Nếu có correlation hoặc p-value, phải báo coefficient/test statistic và N; không được chỉ nộp dấu *.
Luyện tập 4
So paired t-test và Wilcoxon khi có extreme difference.
Yêu cầu nộp: Output/Syntax, một đoạn giải thích 100–150 từ và một phép kiểm đối chứng. Nếu có correlation hoặc p-value, phải báo coefficient/test statistic và N; không được chỉ nộp dấu *.
Phòng kiểm chứng bằng thay đổi dữ liệu
Tạo một bản sao dữ liệu và chỉ thay một yếu tố: thêm outlier, thu hẹp range, tăng sample size, tạo cluster, tăng tỷ lệ ties hoặc missing. Chạy lại đúng thủ tục và ghi yếu tố nào trong Output thay đổi. Mục đích là hiểu độ nhạy của method thay vì học thuộc bảng kết quả.
Biên bản QA tối thiểu
| Mục | Trước phân tích | Sau phân tích | Kết luận QA |
|---|---|---|---|
| N | Ghi tổng và N hợp lệ | Đối chiếu Output | Khớp/không khớp |
| Mức đo | Ghi Nominal/Ordinal/Scale | Đối chiếu method | Phù hợp/không |
| Missing | Pairwise/listwise/analysis | N từng bảng | Không mất case âm thầm |
| Outlier/cluster | ID/pattern | Kiểm sensitivity | Giữ/sửa có lý do |
| Hệ số/test | Dự kiến method | Coefficient/statistic/p | Đúng câu hỏi |
| Diễn giải | Association/difference | Report cuối | Không causal hóa |