Kiểm địnhKTL cơ bản

Kiểm định Wilcoxon-Mann-Whitney

Kiểm định Wilcoxon-Mann-Whitney trong thực hành kinh tế lượng với SPSS

Tóm tắt: Kiểm định Wilcoxon-Mann-Whitney là phương pháp thống kê phi tham số được sử dụng để so sánh sự khác biệt giữa hai nhóm độc lập trong thực hành kinh tế lượng. Khác với t-test, kiểm định này không yêu cầu dữ liệu phải có phân phối chuẩn, phù hợp với nhiều tình huống thực tế trong phân tích kinh tế. Bài viết hướng dẫn chi tiết cách thực hiện kiểm định này trên SPSS với dữ liệu thu nhập lao động Việt Nam.

Giới thiệu về kiểm định Wilcoxon-Mann-Whitney

Trong thực hành kinh tế lượng, kiểm định Wilcoxon-Mann-Whitney được sử dụng để so sánh sự khác nhau giữa hai nhóm độc lập khi biến phụ thuộc có thể là biến thứ tự hoặc biến liên tục, nhưng không yêu cầu phải có phân phối chuẩn. Đây chính là sự khác nhau giữa kiểm định này với kiểm định t-test trung bình hai mẫu độc lập.

Ưu điểm của kiểm định Wilcoxon-Mann-Whitney:

  • Không yêu cầu phân phối chuẩn
  • Phù hợp với dữ liệu có điểm dị biệt (outliers)
  • Có thể áp dụng cho dữ liệu thứ tự
  • Kết quả ổn định với mẫu nhỏ

Kiểm định này còn được biết đến với tên gọi Mann-Whitney U test hoặc Wilcoxon rank-sum test. Trong nghiên cứu kinh tế, phương pháp này thường được sử dụng khi so sánh thu nhập, chi tiêu, hoặc các biến kinh tế khác giữa hai nhóm dân cư.

Xem thêm: Kiểm định phi tham số

Giả thiết và điều kiện áp dụng

Để sử dụng kiểm định Wilcoxon-Mann-Whitney trong thực hành kinh tế lượng, dữ liệu phải thỏa mãn 4 điều kiện quan trọng sau:

  • Biến phụ thuộc phải là biến thứ tự hoặc biến liên tục
  • Biến độc lập là biến phân loại hai mức, chẳng hạn biến giới tính (nam/nữ), biến lao động (có việc làm/thất nghiệp), biến khu vực (thành thị/nông thôn)
  • Tính độc lập của mẫu: không có mối quan hệ giữa các quan sát trong cùng một nhóm hoặc giữa hai nhóm
  • Biến phụ thuộc không yêu cầu phải có phân phối chuẩn trong từng nhóm. Tuy nhiên, chúng ta cũng cần kiểm tra dạng phân phối của biến phụ thuộc theo 2 nhóm độc lập bằng biểu đồ histogram

Lưu ý quan trọng: Mặc dù kiểm định này không yêu cầu phân phối chuẩn, nhưng các bạn vẫn cần kiểm tra dạng phân phối của hai nhóm để đảm bảo chúng có hình dạng tương tự nhau. Điều này ảnh hưởng đến cách diễn giải kết quả.

So sánh dạng phân phối thu nhập giữa hai nhóm nam và nữ

Theo hình minh họa trên, phân phối của biến thu nhập của nam và nữ có dạng giống nhau. Ở biểu đồ bên trái, hai phân phối là hoàn toàn giống nhau. Tuy nhiên, ở biểu đồ phải mặc dù có dạng giống nhau nhưng vị trí phân phối ở hai nhóm có sự khác nhau. Trong hình minh họa trên, thu nhập của lao động nam cao hơn lao động nữ.

Ví dụ thực tế từ kinh tế Việt Nam

Để minh họa cho việc áp dụng kiểm định Wilcoxon-Mann-Whitney trong thực hành kinh tế lượng, chúng ta sẽ sử dụng bộ dữ liệu khảo sát lao động Việt Nam. Đây là một chủ đề quan trọng trong nghiên cứu kinh tế xã hội, đặc biệt là vấn đề bình đẳng giới trong thu nhập.

Bộ dữ liệu vietlod.sav gồm 7287 quan sát là người lao động trên cả nước. Các thông tin khảo sát chính bao gồm:

  • Giới tính (gender): 0 = nữ, 1 = nam
  • Tuổi (age): tuổi của người lao động
  • Dân tộc (ethnic): thông tin về dân tộc
  • Bằng cấp (degree): trình độ học vấn
  • Nơi sinh sống (region, urban): khu vực địa lý
  • Số năm đi học (school): số năm học vấn
  • Số năm kinh nghiệm (exp): kinh nghiệm làm việc
  • Doanh nghiệp hoạt động (section): loại hình doanh nghiệp
  • Lĩnh vực làm việc (structure): ngành nghề
  • Thu nhập (earn): thu nhập hàng năm (triệu đồng)

Đặt vấn đề nghiên cứu

Giả sử, chúng ta muốn đánh giá nhận định cho rằng thu nhập của người lao động không có sự khác nhau theo giới tính. Đây là một vấn đề quan trọng trong chính sách kinh tế xã hội Việt Nam. Chúng ta sẽ kiểm định cặp giả thuyết sau:

  • $H_0$: Thu nhập của người lao động nam bằng thu nhập của người lao động nữ
  • $H_1$: Có sự khác nhau về thu nhập của người lao động theo giới tính

Giải thích ký hiệu:

  • $H_0$: Giả thuyết không (null hypothesis)
  • $H_1$: Giả thuyết đối (alternative hypothesis)

Hướng dẫn thực hành chi tiết trên SPSS

Bước 1: Kiểm tra phân phối dữ liệu

Trước khi thực hiện kiểm định chính, các bạn cần kiểm tra dạng phân phối của biến thu nhập earn theo biến giới tính gender bằng đồ thị histogram. Đây là bước quan trọng để đảm bảo điều kiện áp dụng kiểm định.

Thực hiện vẽ đồ thị histogram giữa hai nhóm nam/nữ như sau:

  • Vào GraphsLegacy dialogsHistogram…
  • Đưa các biến vào vị trí phù hợp như hình dưới đây

Giao diện tạo biểu đồ histogram trong SPSS

Kết quả kiểm tra phân phối được thể hiện như sau:

Biểu đồ histogram thu nhập theo giới tính

Về cơ bản, biểu đồ thu nhập của lao động nam và lao động nữ có hình dạng tương đối giống nhau. Tuy nhiên, biểu đồ thu nhập của lao động nam cao hơn đáng kể so với lao động nữ ở các mức thu nhập từ 10-15 triệu đồng/người/năm. Điều này cho thấy, ở mức thu nhập cao, số lượng lao động nam có thu nhập cao nhiều hơn lao động nữ.

Bước 2: Thực hiện kiểm định Wilcoxon-Mann-Whitney

Sau khi đã kiểm tra phân phối, các bạn tiến hành thực hiện kiểm định chính theo các bước sau:

Bước 2.1: Truy cập menu kiểm định

Vào AnalyzeNonparametric TestsLegacy Dialogs2 Independent Samples…

Menu truy cập kiểm định phi tham số trong SPSS

Bước 2.2: Thiết lập biến cho kiểm định

Trong cửa sổ Two-Independent-Samples Tests, thực hiện các thao tác sau:

  • Đưa biến thu nhập earn vào ô Test Variable List
  • Đưa biến giới tính gender vào ô Grouping Variable
  • Bấm Define Groups… để định nghĩa nhóm

Giao diện thiết lập kiểm định Two-Independent-Samples Tests

Bước 2.3: Thiết lập tùy chọn bổ sung

Bấm Continue để trở về cửa sổ Two-Independent-Samples Tests, sau đó bấm Options… để thiết lập các tùy chọn thống kê mô tả:

Cửa sổ tùy chọn Options trong kiểm định

Chọn DescriptiveQuartiles trong phần Statistics để có thêm thông tin thống kê mô tả trong kết quả.

Bước 2.4: Thực hiện kiểm định

Bấm Continue để trở về cửa sổ Two-Independent-Samples Tests, sau đó bấm OK để tiến hành thực hiện. Lưu ý rằng hộp Mann-Whitney U đã được chọn mặc định.

Giải thích kết quả kiểm định

Kết quả thực hiện kiểm định Wilcoxon-Mann-Whitney trong thực hành kinh tế lượng được hiển thị như sau:

Bảng kết quả kiểm định Wilcoxon-Mann-Whitney

Phân tích các chỉ số quan trọng

Các chỉ số chính trong kết quả:

  • Tổng hạng trung bình của nhóm nữ (gender = 0): 3.382,03
  • Tổng hạng trung bình của nhóm nam (gender = 1): 3.818,07
  • Chỉ số Mann-Whitney U: 5.605.740
  • Đơn vị lệch chuẩn (Z): 8,665
  • Mức ý nghĩa quan sát (Sig 2-tailed): 0,000

Diễn giải kết quả

Kết luận chính: Thu nhập giữa hai nhóm lao động nam và lao động nữ có sự khác biệt có ý nghĩa thống kê. Kết quả này được xác nhận bởi giá trị Sig. (2-tailed) = 0,000 < 0,05.

Dựa vào kết quả kiểm định, các bạn có thể đưa ra những nhận định sau:

  • Về hạng trung bình: Nhóm nam có hạng trung bình cao hơn nhóm nữ (3.818,07 > 3.382,03), cho thấy thu nhập của nam giới có xu hướng cao hơn
  • Về ý nghĩa thống kê: Với p-value = 0,000 < 0,05, chúng ta bác bỏ giả thuyết $H_0$ và chấp nhận giả thuyết $H_1$
  • Về độ lớn khác biệt: Giá trị Z = 8,665 cho thấy sự khác biệt là khá lớn

Lưu ý quan trọng khi áp dụng

Ưu điểm của kiểm định Wilcoxon-Mann-Whitney

Điểm mạnh trong thực hành kinh tế lượng:

  • Phù hợp với dữ liệu kinh tế thường không tuân theo phân phối chuẩn
  • Ít bị ảnh hưởng bởi các giá trị ngoại lai (outliers)
  • Có thể áp dụng với mẫu nhỏ
  • Dễ thực hiện và diễn giải kết quả

Hạn chế và cảnh báo

Các điểm cần lưu ý:

  • Kiểm định này so sánh giá trị trung vị, không phải giá trị trung bình như t-test
  • Yêu cầu hai nhóm có phân phối cùng dạng
  • Kết quả có thể khác với t-test nếu dữ liệu có phân phối chuẩn
  • Không thể tính khoảng tin cậy cho sự khác biệt

Khi nào nên sử dụng kiểm định thay thế

Trong một số trường hợp, các bạn có thể cần xem xét sử dụng các kiểm định khác:

  • T-test: Khi dữ liệu có phân phối chuẩn và muốn so sánh trung bình
  • Kolmogorov-Smirnov test: Khi muốn so sánh toàn bộ phân phối
  • Kruskal-Wallis test: Khi có nhiều hơn hai nhóm cần so sánh

Tổng kết

Kiểm định Wilcoxon-Mann-Whitney là một công cụ hữu ích trong thực hành kinh tế lượng, đặc biệt khi làm việc với dữ liệu không tuân theo phân phối chuẩn. Thông qua ví dụ phân tích thu nhập theo giới tính, chúng ta đã thấy rằng kiểm định này có thể phát hiện sự khác biệt có ý nghĩa thống kê giữa hai nhóm.

Kết quả cho thấy có sự khác biệt về thu nhập giữa lao động nam và nữ tại Việt Nam, với thu nhập của nam giới có xu hướng cao hơn. Đây là thông tin quan trọng cho việc hoạch định chính sách bình đẳng giới trong lĩnh vực kinh tế.

Key Points:

  • Kiểm định Wilcoxon-Mann-Whitney phù hợp với dữ liệu không có phân phối chuẩn
  • Phương pháp so sánh dựa trên hạng (rank) thay vì giá trị tuyệt đối
  • Dễ thực hiện trên SPSS với giao diện trực quan
  • Kết quả cung cấp thông tin có ý nghĩa cho nghiên cứu kinh tế xã hội
  • Cần kiểm tra điều kiện áp dụng trước khi sử dụng

Xem thêm: Kiểm định phi tham số

Phụ lục

SPSS Syntax

SPSS Syntax (.sps)


* Kiểm định Wilcoxon-Mann-Whitney trong SPSS
* Tác giả: Thực hành kinh tế lượng
* Mục đích: So sánh thu nhập theo giới tính

* Mở file dữ liệu
GET FILE='/data/vietlod.sav'.

* Kiểm tra phân phối bằng histogram
GRAPH
  /HISTOGRAM(NORMAL)=earn
  /PANEL COLVAR=gender COLOP=CROSS.

* Thực hiện kiểm định Wilcoxon-Mann-Whitney
NPAR TESTS
  /M-W= earn BY gender(0 1)
  /STATISTICS DESCRIPTIVES QUARTILES
  /MISSING ANALYSIS.

* Thống kê mô tả theo nhóm
EXAMINE VARIABLES=earn BY gender
  /PLOT BOXPLOT HISTOGRAM
  /STATISTICS DESCRIPTIVES
  /CINTERVAL 95
  /MISSING LISTWISE
  /NOTOTAL.

Stata

Stata (.do file)


* Kiểm định Wilcoxon-Mann-Whitney trong Stata
* Tác giả: Thực hành kinh tế lượng
* Mục đích: So sánh thu nhập theo giới tính

* Mở file dữ liệu
use "vietlod.dta", clear

* Kiểm tra phân phối bằng histogram
histogram earn, by(gender) normal ///
    title("Phân phối thu nhập theo giới tính") ///
    subtitle("Dữ liệu lao động Việt Nam") ///
    note("Nguồn: Khảo sát lao động quốc gia")

* Thống kê mô tả theo nhóm
tabstat earn, by(gender) statistics(n mean median sd min max p25 p75) ///
    columns(statistics) format(%9.2f)

* Thực hiện kiểm định Wilcoxon-Mann-Whitney (ranksum)
ranksum earn, by(gender)

* Kiểm định với các tùy chọn bổ sung
ranksum earn, by(gender) porder

* Tạo biểu đồ box plot để so sánh
graph box earn, over(gender) ///
    title("So sánh thu nhập theo giới tính") ///
    subtitle("Kiểm định Wilcoxon-Mann-Whitney") ///
    ytitle("Thu nhập (triệu đồng/năm)") ///
    note("Nguồn: Dữ liệu lao động Việt Nam")

R

R (.R script)


# Kiểm định Wilcoxon-Mann-Whitney trong R
# Tác giả: Thực hành kinh tế lượng
# Mục đích: So sánh thu nhập theo giới tính

# Tải thư viện cần thiết
library(haven)      # Đọc file SPSS
library(ggplot2)    # Vẽ biểu đồ
library(dplyr)      # Xử lý dữ liệu
library(coin)       # Kiểm định phi tham số

# Đọc dữ liệu từ file SPSS
data <- read_sav("vietlod.sav") # Kiểm tra cấu trúc dữ liệu str(data) summary(data[c("earn", "gender")]) # Thống kê mô tả theo nhóm data %>%
  group_by(gender) %>%
  summarise(
    n = n(),
    mean = mean(earn, na.rm = TRUE),
    median = median(earn, na.rm = TRUE),
    sd = sd(earn, na.rm = TRUE),
    min = min(earn, na.rm = TRUE),
    max = max(earn, na.rm = TRUE),
    q25 = quantile(earn, 0.25, na.rm = TRUE),
    q75 = quantile(earn, 0.75, na.rm = TRUE)
  )

# Tạo histogram so sánh
ggplot(data, aes(x = earn, fill = factor(gender))) +
  geom_histogram(alpha = 0.7, position = "identity", bins = 30) +
  facet_wrap(~gender, labeller = labeller(gender = c("0" = "Nữ", "1" = "Nam"))) +
  labs(
    title = "Phân phối thu nhập theo giới tính",
    x = "Thu nhập (triệu đồng/năm)",
    y = "Tần suất",
    fill = "Giới tính"
  ) +
  theme_minimal()

# Thực hiện kiểm định Wilcoxon-Mann-Whitney
# Phương pháp 1: Sử dụng hàm wilcox.test()
result1 <- wilcox.test(earn ~ gender, data = data, 
                       alternative = "two.sided")
print(result1)

# Phương pháp 2: Sử dụng thư viện coin (chính xác hơn)
result2 <- wilcox_test(earn ~ factor(gender), data = data,
                       distribution = "exact")
print(result2)

# Tạo box plot so sánh
ggplot(data, aes(x = factor(gender), y = earn)) +
  geom_boxplot() +
  labs(
    title = "So sánh thu nhập theo giới tính",
    x = "Giới tính (0 = Nữ, 1 = Nam)",
    y = "Thu nhập (triệu đồng/năm)"
  ) +
  theme_minimal()

# Tính effect size (r)
z_score <- qnorm(result1$p.value/2)
n <- nrow(data)
effect_size <- abs(z_score) / sqrt(n)
cat("Effect size (r):", effect_size, "\n")

Python

Python (.py script)


# Kiểm định Wilcoxon-Mann-Whitney trong Python
# Tác giả: Thực hành kinh tế lượng
# Mục đích: So sánh thu nhập theo giới tính

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from scipy import stats
import pyreadstat

# Thiết lập hiển thị tiếng Việt
plt.rcParams['font.family'] = 'DejaVu Sans'
sns.set_style("whitegrid")

# Đọc dữ liệu từ file SPSS
data, meta = pyreadstat.read_sav("vietlod.sav")

# Kiểm tra thông tin cơ bản
print("Thông tin dữ liệu:")
print(data[['earn', 'gender']].info())
print("\nThống kê mô tả:")
print(data[['earn', 'gender']].describe())

# Thống kê mô tả theo nhóm
print("\nThống kê theo giới tính:")
stats_by_gender = data.groupby('gender')['earn'].agg([
    'count', 'mean', 'median', 'std', 'min', 'max',
    lambda x: x.quantile(0.25),
    lambda x: x.quantile(0.75)
]).round(2)
stats_by_gender.columns = ['Số lượng', 'Trung bình', 'Trung vị', 'Độ lệch chuẩn', 
                          'Min', 'Max', 'Q25', 'Q75']
print(stats_by_gender)

# Tạo histogram so sánh
plt.figure(figsize=(12, 5))

plt.subplot(1, 2, 1)
data[data['gender'] == 0]['earn'].hist(alpha=0.7, bins=30, label='Nữ', color='pink')
data[data['gender'] == 1]['earn'].hist(alpha=0.7, bins=30, label='Nam', color='lightblue')
plt.xlabel('Thu nhập (triệu đồng/năm)')
plt.ylabel('Tần suất')
plt.title('Phân phối thu nhập theo giới tính')
plt.legend()

plt.subplot(1, 2, 2)
sns.boxplot(data=data, x='gender', y='earn')
plt.xlabel('Giới tính (0 = Nữ, 1 = Nam)')
plt.ylabel('Thu nhập (triệu đồng/năm)')
plt.title('Box plot thu nhập theo giới tính')

plt.tight_layout()
plt.show()

# Tách dữ liệu theo nhóm
earn_female = data[data['gender'] == 0]['earn'].dropna()
earn_male = data[data['gender'] == 1]['earn'].dropna()

# Thực hiện kiểm định Wilcoxon-Mann-Whitney
statistic, p_value = stats.mannwhitneyu(earn_male, earn_female, 
                                       alternative='two-sided')

print(f"\nKết quả kiểm định Wilcoxon-Mann-Whitney:")
print(f"Thống kê U: {statistic}")
print(f"P-value: {p_value:.6f}")

# Tính z-score
n1, n2 = len(earn_male), len(earn_female)
mean_u = n1 * n2 / 2
std_u = np.sqrt(n1 * n2 * (n1 + n2 + 1) / 12)
z_score = (statistic - mean_u) / std_u

print(f"Z-score: {z_score:.3f}")

# Diễn giải kết quả
alpha = 0.05
if p_value < alpha:
    print(f"\nKết luận: Với α = {alpha}, p-value = {p_value:.6f} < {alpha}") print("Bác bỏ giả thuyết H0. Có sự khác biệt có ý nghĩa thống kê về thu nhập theo giới tính.") else: print(f"\nKết luận: Với α = {alpha}, p-value = {p_value:.6f} >= {alpha}")
    print("Không đủ bằng chứng để bác bỏ giả thuyết H0.")

# Tính effect size
effect_size = abs(z_score) / np.sqrt(n1 + n2)
print(f"Effect size (r): {effect_size:.4f}")

# Diễn giải effect size
if effect_size < 0.1:
    effect_interpretation = "nhỏ"
elif effect_size < 0.3:
    effect_interpretation = "trung bình"
else:
    effect_interpretation = "lớn"
print(f"Độ lớn hiệu ứng: {effect_interpretation}")

Tài liệu tham khảo

  • Field, A. (2018). Discovering Statistics Using IBM SPSS Statistics. 5th Edition. SAGE Publications.
  • Hollander, M., Wolfe, D. A., & Chicken, E. (2013). Nonparametric Statistical Methods. 3rd Edition. Wiley.
  • IBM Corporation. (2023). IBM SPSS Statistics Base 29.0.0 User’s Guide. IBM Corporation.
  • Siegel, S., & Castellan, N. J. (1988). Nonparametric Statistics for the Behavioral Sciences. 2nd Edition. McGraw-Hill.
  • Wilcoxon, F. (1945). Individual comparisons by ranking methods. Biometrics Bulletin, 1(6), 80-83.
Xem thêm
Back to top button