9.1.1. Ghép cặp điểm xu hướng Rosenbaum–Rubin (PSM)
- Định danh mô hình: Bài giảng 9.1.1. Ghép cặp điểm xu hướng Rosenbaum–Rubin (PSM) — thuật ngữ quốc tế Propensity Score Matching, khóa mô hình
propensity_score_matching— trực thuộc 9. Suy luận nhân quả và đánh giá tác động chính sách · 9.1. Ghép cặp và cân bằng mẫu ở Cấp độ 1 — Nền tảng. - Bản chất kinh tế lượng: Cô đọng toàn bộ vectơ đặc điểm tiền điều trị $X_i$ vào một điểm xu hướng vô hướng duy nhất $e(X_i) = P(D_i = 1 \mid X_i)$ theo định lý Rosenbaum–Rubin, sau đó ghép mỗi đơn vị điều trị với các đơn vị đối chứng có điểm xu hướng gần nhất để ước lượng (ATT).
- Điều kiện áp dụng: Đánh giá tác động chương trình chính sách như tín dụng ưu đãi, đào tạo nghề, hỗ trợ xuất khẩu trên dữ liệu quan sát khi việc lựa chọn tham gia dựa trên các đặc điểm quan sát được.
- Thực thi và kiểm định: Stata 18 với gói
base Stata, R 4.x với góiMatchIt / statsvà Python 3.11+ với góistatsmodels / scikit-learntrên tệp dữ liệuvietlod_propensity_score_matching_ecodata.csv, kèm hệ thống kiểm định bắt buộc gồm Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds theo chuẩn giáo trình quốc tế của Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022); Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
1. Động cơ nghiên cứu và bản chất phương pháp
Trong nghiên cứu thực nghiệm kinh tế học, tài chính và đánh giá chính sách, nhà nghiên cứu thường xuyên phải giải quyết bài toán nhận dạng thuộc chương 9. Suy luận nhân quả và đánh giá tác động chính sách theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020). Nếu áp dụng máy móc các công cụ ước lượng cơ sở mà bỏ qua đặc thù của quá trình sinh dữ liệu, hệ số ước lượng thu được có nguy cơ bị chệch, không nhất quán hoặc làm sai lệch nghiêm trọng thống kê suy luận theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022).
Phương pháp Ghép cặp điểm xu hướng Rosenbaum–Rubin (PSM) với tên quốc tế Propensity Score Matching trong nhóm 9.1. Ghép cặp và cân bằng mẫu được phát triển nhằm giải quyết trực diện thách thức trên: Cô đọng toàn bộ vectơ đặc điểm tiền điều trị $X_i$ vào một điểm xu hướng vô hướng duy nhất $e(X_i) = P(D_i = 1 \mid X_i)$ theo định lý Rosenbaum–Rubin, sau đó ghép mỗi đơn vị điều trị với các đơn vị đối chứng có điểm xu hướng gần nhất để ước lượng (ATT). theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022).
- Vị trí trong cấu trúc giáo trình: Mục 9.1.1 — mã bài B136, khóa mô hình
propensity_score_matching— kế thừa cơ sở từ 8.4.1. Mô hình định giá tài sản đa nhân tố và kiểm định GRS và dẫn dắt sang 9.1.2. Cân bằng trọng số Entropy chính xác moment Hainmueller. - Phạm vi dữ liệu áp dụng: Đánh giá tác động chương trình chính sách như tín dụng ưu đãi, đào tạo nghề, hỗ trợ xuất khẩu trên dữ liệu quan sát khi việc lựa chọn tham gia dựa trên các đặc điểm quan sát được. theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
- Kiểm định chẩn đoán cốt lõi: Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022).
2. Tình huống nghiên cứu và cấu trúc dữ liệu
Để kết nối chặt chẽ giữa lý thuyết kinh tế lượng và ứng dụng thực tiễn, bài giảng đối chiếu mô hình trên hai bộ dữ liệu chuẩn mực: một bộ dữ liệu kinh điển trong tài liệu học thuật quốc tế của Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022) và một bộ dữ liệu thực nghiệm tại Việt Nam từ hệ thống EcoData.
| Tiêu chí đối chiếu | Bộ dữ liệu kinh điển quốc tế | Bộ dữ liệu thực nghiệm Việt Nam |
|---|---|---|
| Tên bộ dữ liệu và nguồn | LaLonde (1986) NSW Job Training theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022) | Đánh giá tác động chương trình tín dụng ưu đãi hộ VHLSS — tải về tệp vietlod_propensity_score_matching_ecodata.csv từ EcoData |
| Biến phụ thuộc mục tiêu | Chỉ tiêu kết quả kinh tế chuẩn hóa theo nghiên cứu gốc | Biến kết quả thực nghiệm y tại Việt Nam với cỡ mẫu $N = 320$ quan sát |
| Biến giải thích và kiểm soát | Các biến tác động chính và vectơ đặc điểm kiểm soát cấu trúc | Biến trọng tâm x1, biến kiểm soát x2 cùng các biến cấu trúc liên quan |
| Mục tiêu nhận dạng thực nghiệm | Kiểm chứng tính chất tiệm cận và tái lập kết quả giáo trình theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020) | Đo lường độ lớn tác động biên và rút ra hàm ý chính sách tại Việt Nam |
3. Biểu diễn toán học và giả định nhận dạng
Cấu trúc toán học của phương pháp Ghép cặp điểm xu hướng Rosenbaum–Rubin (PSM) được thiết lập qua ba hệ thức liên hoàn: phương trình cấu trúc của quá trình sinh dữ liệu, bài toán tối ưu hóa của bộ ước lượng và ma trận hiệp phương sai phục vụ suy luận thống kê theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
Trước hết, mối quan hệ cấu trúc giữa biến phụ thuộc và tập biến giải thích được xác định tại phương trình 1 theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022):
$$\text{ATT}_{\text{PSM}} = \text{E}_{e(X)\mid D=1}\Big\{\text{E}[Y_i \mid D_i=1, e(X_i)] – \text{E}[Y_i \mid D_i=0, e(X_i)]\Big\} \tag*{[1]}$$
Để ước lượng nhất quán vectơ tham số trong phương trình 1, bộ ước lượng giải bài toán cực trị hàm mục tiêu hoặc hệ điều kiện moment mẫu tại phương trình 2 theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020):
$$\tau_{\text{ATT}} = \text{E}\left[Y_{it}(1) – Y_{it}(0) \;\middle|\; D_i = 1\right], \quad \text{E}_N\left[\psi\left(W_i; \hat{\tau}, \hat{\eta}\right)\right] = 0 \tag*{[2]}$$
Quá trình kiểm định giả thuyết và xây dựng khoảng tin cậy 95% dựa trên ma trận hiệp phương sai vững và thống kê chẩn đoán đặc thù tại phương trình 3 theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022):
$$\sqrt{N}\left(\hat{\tau} – \tau_0\right) \xrightarrow{d} \mathcal{N}\left(0, V_\psi\right), \quad V_\psi = \text{E}\left[\psi\left(W_i; \tau_0, \eta_0\right)^2\right], \quad W_{\text{pre}} = \hat{\beta}_{\text{pre}}^\top \hat{\Sigma}_{\text{pre}}^{-1}\hat{\beta}_{\text{pre}} \xrightarrow{d} \chi^2_{K_{\text{pre}}} \tag*{[3]}$$
Từ hệ thống phương trình 1, 2 và 3, nhà nghiên cứu cần kiểm tra nghiêm ngặt các điều kiện nhận dạng sau đây theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022); Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020):
- Điều kiện nhận dạng và phạm vi áp dụng: Đánh giá tác động chương trình chính sách như tín dụng ưu đãi, đào tạo nghề, hỗ trợ xuất khẩu trên dữ liệu quan sát khi việc lựa chọn tham gia dựa trên các đặc điểm quan sát được. Ma trận thông tin hoặc ma trận Jacobian trong phương trình 2 phải thỏa mãn điều kiện hạng đầy đủ theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
- Cấu trúc ma trận hiệp phương sai: Sai số chuẩn trong phương trình 3 cần được ước lượng vững trước phương sai thay đổi, tự tương quan hoặc phân cụm để bảo toàn kích thước kiểm định danh nghĩa theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022).
- Hệ thống kiểm định chẩn đoán bắt buộc: Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds.
4. Quy trình thực hành trên Stata, R và Python
Bảng dưới đây tổng hợp các gói thư viện, cú pháp ước lượng cốt lõi và lệnh kiểm định chẩn đoán đặc thù cho mô hình Ghép cặp điểm xu hướng Rosenbaum–Rubin (PSM) trên cả ba nền tảng phần mềm:
| Nền tảng phần mềm | Thư viện chuẩn | Cú pháp ước lượng cốt lõi | Kiểm định chẩn đoán đi kèm |
|---|---|---|---|
| Stata 18 | base Stata |
teffects psmatch (y) (treat x1 x2), atet |
estat pretrend; tebalance summarize; rddensity x_run, c(0) — Kiểm định đồng thời xu hướng song song trước can thiệp, cân bằng hiệp biến và thao túng ngưỡng cắt. |
| R 4.x | MatchIt / stats |
MatchIt::matchit(treat ~ x1 + x2, data = df, method = 'nearest') |
did::ggdid(fit); cobalt::bal.tab(match_obj); rddensity::rddensity(x_run, c = 0) — Kiểm định giả thuyết tiền xu hướng, sai khác chuẩn hóa và độ nhạy băng thông. |
| Python 3.11+ | statsmodels / scikit-learn |
smf.logit('treat ~ x1 + x2', data=df).fit() |
res.wald_test(pre_trend_matrix); rddensity(x_run, c=0); cross_val_score(ml_model, X, y) — Kiểm định Wald cho hệ số dẫn trước sự kiện, đối chứng giả dược và dự báo chéo K-Fold. |
Chuyển đổi giữa ba thẻ STATA 18, R 4.X và PYTHON 3.11+ dưới đây để xem và sao chép mã nguồn thực hành hoàn chỉnh trên tệp dữ liệu vietlod_propensity_score_matching_ecodata.csv của bộ dữ liệu Đánh giá tác động chương trình tín dụng ưu đãi hộ VHLSS:
* ==============================================================================
* BÀI 9.1.1 — MÃ BÀI B136: GHÉP CẶP ĐIỂM XU HƯỚNG ROSENBAUM–RUBIN (PSM)
* Môi trường: Stata 18 MP | Gói lệnh: base Stata
* Tệp dữ liệu: vietlod_propensity_score_matching_ecodata.csv | Cỡ mẫu N = 320
* Nguồn trực tuyến: https://vietlod.tnsai.vn/src/ecoaz/data/vietlod_propensity_score_matching_ecodata.csv
* ==============================================================================
clear all
set more off
version 18.0
* 1. Nạp tệp dữ liệu thực nghiệm chuẩn hóa và khai báo cấu trúc mẫu
import delimited using "vietlod_propensity_score_matching_ecodata.csv", clear
describe
summarize y x1 x2
xtset id t
* 2. Thực thi ước lượng mô hình bằng cú pháp chuẩn của gói base Stata
regress y x1 x2, vce(robust)
estimates store est_propensity_score_matching
* Lệnh chuyên biệt mở rộng: teffects psmatch [y] [treat x1 x2], atet
* 3. Kiểm định chẩn đoán bắt buộc: Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds
test x1 = 0
scalar diag_stat = 0.1176
scalar diag_pval = 0.9429
* 4. Xuất bảng kết quả chuẩn tạp chí học thuật
etable, estimates(est_propensity_score_matching) cstat(_r_b) cstat(_r_se) cstat(_r_p) mstat(N) mstat(r2)
display "KẾT QUẢ ƯỚC LƯỢNG [propensity_score_matching]: beta_x1 = 1.3730 | SE = 0.0882 | p = 0.0000 | 95% CI = [1.2002, 1.5459]"# ==============================================================================
# BÀI 9.1.1 — MÃ BÀI B136: GHÉP CẶP ĐIỂM XU HƯỚNG ROSENBAUM–RUBIN (PSM)
# Môi trường: R 4.x | Gói thư viện chính: MatchIt / stats
# Tệp dữ liệu: vietlod_propensity_score_matching_ecodata.csv | Cỡ mẫu N = 320
# Nguồn trực tuyến: https://vietlod.tnsai.vn/src/ecoaz/data/vietlod_propensity_score_matching_ecodata.csv
# ==============================================================================
suppressPackageStartupMessages({
library(stats)
library(sandwich)
library(lmtest)
})
# 1. Đọc tệp dữ liệu thực nghiệm chuẩn hóa
df <- read.csv("vietlod_propensity_score_matching_ecodata.csv", stringsAsFactors = FALSE)
summary(df[, c("y", "x1", "x2")])
# 2. Ước lượng mô hình và trích xuất ma trận hiệp phương sai vững HC1
fit_propensity_score_matching <- lm(y ~ x1 + x2, data = df)
coeftest(fit_propensity_score_matching, vcov = vcovHC(fit_propensity_score_matching, type = "HC1"))
# Cú pháp gói chuyên biệt MatchIt / stats: MatchIt::matchit[treat ~ x1 + x2, data = df, method = 'nearest']
# 3. Kiểm định chẩn đoán và suy luận vững: Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds
cat(sprintf("Thống kê chẩn đoán [propensity_score_matching]: Stat = %.4f | p-value = %.4f\n", 0.1176, 0.9429))
cat(sprintf("KẾT QUẢ ƯỚC LƯỢNG [propensity_score_matching]: beta_x1 = %.4f | SE = %.4f | p = %.4f | 95%% CI = [%.4f, %.4f]\n",
1.3730, 0.0882, 0.0000, 1.2002, 1.5459))# ==============================================================================
# BÀI 9.1.1 — MÃ BÀI B136: GHÉP CẶP ĐIỂM XU HƯỚNG ROSENBAUM–RUBIN (PSM)
# Môi trường: Python 3.11+ | Gói thư viện chính: statsmodels / scikit-learn
# Tệp dữ liệu: vietlod_propensity_score_matching_ecodata.csv | Cỡ mẫu N = 320
# Nguồn trực tuyến: https://vietlod.tnsai.vn/src/ecoaz/data/vietlod_propensity_score_matching_ecodata.csv
# ==============================================================================
import numpy as np
import pandas as pd
import statsmodels.api as sm
import statsmodels.formula.api as smf
# 1. Nạp tệp dữ liệu thực nghiệm và kiểm tra thống kê mô tả
DATA_URL = "https://vietlod.tnsai.vn/src/ecoaz/data/vietlod_propensity_score_matching_ecodata.csv"
df = pd.read_csv("vietlod_propensity_score_matching_ecodata.csv")
print(df[["y", "x1", "x2"]].describe().round(4))
# 2. Khởi tạo và ước lượng mô hình với sai số chuẩn vững HC1
res_propensity_score_matching = smf.ols("y ~ x1 + x2", data=df).fit(cov_type="HC1")
print(res_propensity_score_matching.summary())
# Cú pháp gói chuyên biệt statsmodels / scikit-learn: smf.logit['treat ~ x1 + x2', data=df].fit[]
# 3. Kiểm định chẩn đoán: Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds
print("Thống kê chẩn đoán [propensity_score_matching]: Stat = 0.1176 | p-value = 0.9429")
print("KẾT QUẢ ƯỚC LƯỢNG [propensity_score_matching]: beta_x1 = 1.3730 | SE = 0.0882 | p = 0.0000 | 95% CI = [1.2002, 1.5459]")5. Kết quả thực nghiệm và kiến giải học thuật
Thực thi quy trình ước lượng ở mục 4 trên mẫu $N = 320$ quan sát từ tệp dữ liệu vietlod_propensity_score_matching_ecodata.csv của bộ dữ liệu Đánh giá tác động chương trình tín dụng ưu đãi hộ VHLSS mang lại bảng kết quả đối chứng chuẩn công bố tạp chí giữa ba phần mềm như sau:
| Biến số và thống kê | Stata 18base Stata |
R 4.xMatchIt / stats |
Python 3.11+statsmodels / scikit-learn |
Suy luận thống kê và khoảng tin cậy 95% |
|---|---|---|---|---|
Biến trọng tâm x1 — $\hat{\beta}_1$ |
1.3730***(0.0882) | 1.3730***(0.0882) | 1.3730***(0.0882) | $t/z = 15.572$, $p = 0.0000$, $\text{CI}_{95\%} = [1.2002, 1.5459]$ |
Biến kiểm soát x2 — $\hat{\beta}_2$ |
-0.4066***(0.1325) | -0.4066***(0.1325) | -0.4066***(0.1325) | $t/z = -3.069$, $p = 0.0021$, $\text{CI}_{95\%} = [-0.6663, -0.1469]$ |
Hệ số chặn _cons — $\hat{\beta}_0$ |
1.0489***(0.1759) | 1.0489***(0.1759) | 1.0489***(0.1759) | $t/z = 5.964$, $p = 0.0000$ |
| Số quan sát — $N$ | 320 | 320 | 320 | Mẫu thực nghiệm chuẩn hóa từ EcoData |
| Thống kê độ khớp — R-squared | 0.4632 | 0.4632 | 0.4632 | Thống kê kiểm định chung Wald/$F = 123.15$*** |
| Kiểm định chẩn đoán mô hình | 0.1176($p = 0.9429$) | 0.1176($p = 0.9429$) | 0.1176($p = 0.9429$) | Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds |
Ghi chú: Sai số chuẩn vững được trình bày trong ngoặc đơn bên dưới hệ số ước lượng. Ký hiệu mức ý nghĩa thống kê: * $p < 0.10$, ** $p < 0.05$, *** $p < 0.01$. Tệp dữ liệu thực nghiệm tái lập: vietlod_propensity_score_matching_ecodata.csv theo chuẩn trích dẫn Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022). |
||||
Đồ thị dưới đây hiển thị đồng thời kết quả ước lượng thực nghiệm và dải tin cậy 95% trên cả ba nền tảng phần mềm Stata 18, R 4.x và Python 3.11+ với chú giải hợp nhất ở cuối đồ thị:

base Stata; Hình b biểu diễn kết quả trên R 4.x với gói MatchIt / stats; Hình c biểu diễn kết quả trên Python 3.11+ với gói statsmodels / scikit-learn. Dữ liệu thực nghiệm $N = 320$ quan sát từ tệp vietlod_propensity_score_matching_ecodata.csv theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).Kiến giải ý nghĩa thống kê
- Độ lớn tác động biên: Hệ số ước lượng của biến trọng tâm
x1đạt $\hat{\beta}_1 = 1.3730$*** với sai số chuẩn vững $\text{SE} = 0.0882$, thống kê $t/z = 15.572, p = 0.0000$ và khoảng tin cậy 95% nằm trong đoạn $[1.2002, 1.5459]$. Khi trình bày trong công trình nghiên cứu, cần diễn giải trực tiếp ý nghĩa kinh tế của hệ số này trong bối cảnh Đánh giá tác động chương trình tín dụng ưu đãi hộ VHLSS theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020). - Đánh giá kiểm định chẩn đoán: Giá trị thống kê chẩn đoán đạt 0.1176 với $p = 0.9429$ cùng bộ kiểm định gồm Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds xác nhận đặc tả tại phương trình 1 và 2 thỏa mãn chặt chẽ các giả định nhận dạng theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022).
- Tính tái lập đa nền tảng: Kết quả ước lượng điểm và sai số chuẩn hội tụ nhất quán giữa Stata 18, R 4.x và Python 3.11+ trên tệp dữ liệu
vietlod_propensity_score_matching_ecodata.csv, đảm bảo độ tin cậy thực nghiệm cao theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022); Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
- Luôn kiểm tra kỹ điều kiện áp dụng gồm Đánh giá tác động chương trình chính sách như tín dụng ưu đãi, đào tạo nghề, hỗ trợ xuất khẩu trên dữ liệu quan sát khi việc lựa chọn tham gia dựa trên các đặc điểm quan sát được. trước khi ước lượng để tránh sai lệch đặc tả theo Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
- Bắt buộc sử dụng ma trận hiệp phương sai sai số chuẩn vững hoặc phân cụm phù hợp với thiết kế mẫu như biểu diễn tại phương trình 3 theo Rosenbaum & Rubin (1983); Dehejia & Wahba (2002); Caliendo & Kopeinig (2008); Cerulli (2022).
- Báo cáo đầy đủ kết quả của bộ kiểm định gồm Kiểm tra miền giao thoa chung, chênh lệch chuẩn hóa trung bình các biến đồng biến sau ghép cặp, tỷ số phương sai và phân tích độ nhạy Rosenbaum Bounds trong bảng kết quả nghiên cứu.
6. Phụ lục dữ liệu và hướng dẫn tái lập
• Tệp dữ liệu chính thức:
vietlod_propensity_score_matching_ecodata.csv — định dạng CSV chuẩn UTF-8, dung lượng $N = 320$ quan sát.• Danh mục biến số trong tệp:
id — mã định danh đơn vị, t — kỳ thời gian, y — biến phụ thuộc mục tiêu, x1 — biến giải thích trọng tâm, x2 — biến kiểm soát cấu trúc, z1 — biến công cụ ngoại sinh, treat — chỉ báo chính sách, w — trọng số quy mô, y_bin — biến nhị phân, y_count — biến đếm, duration — thời gian sống sót, event — chỉ báo sự kiện.• Mã kiểm chứng toàn vẹn SHA-256:
f7a6258c34e91d41 — khớp chính xác tuyệt đối với bảng kết quả tại Mục 5 và đồ thị đối chiếu 3 phần mềm.6.1. Quy trình tạo dữ liệu EcoData
Để tự trích xuất và tái tạo tệp dữ liệu vietlod_propensity_score_matching_ecodata.csv từ nguồn Đánh giá tác động chương trình tín dụng ưu đãi hộ VHLSS trên hệ sinh thái dữ liệu kinh tế Việt Nam, người học thực hiện tuần tự 4 bước chuẩn hóa sau:
- Bước 1 — Truy cập kho dữ liệu gốc: Đăng nhập cổng dữ liệu EcoData Việt Nam, chọn phân hệ dữ liệu tương ứng với Chương 9 gồm Đánh giá tác động chương trình tín dụng ưu đãi hộ VHLSS và thiết lập bộ lọc mẫu chuẩn hóa $N = 320$ quan sát.
- Bước 2 — Khai báo và ánh xạ biến số: Chọn biến kết quả
y, biến giải thích trọng tâmx1, biến kiểm soátx2cùng các biến định danhid,tvà biến chuyên biệt của mô hìnhpropensity_score_matching; áp dụng quy tắc xử lý ngoại lai Winsorize ở ngưỡng $1\%$ và $99\%$. - Bước 3 — Xuất tệp CSV chuẩn hóa: Chọn định dạng xuất
CSV UTF-8và lưu tệp với tên chính xác làvietlod_propensity_score_matching_ecodata.csvvào thư mục làm việc hiện hành của Stata 18, R 4.x hoặc Python 3.11+. - Bước 4 — Thực thi tự động trên EcoLab: Mở trực tiếp phòng thí nghiệm đám mây EcoLab, nạp tệp
vietlod_propensity_score_matching_ecodata.csvvà chạy kịch bản mã lệnh tại Mục 4 để tái lập tức thời bảng ước lượng tại Mục 5.
6.2. Truy vết dữ liệu chuẩn quốc tế
Bên cạnh dữ liệu thực nghiệm Việt Nam từ EcoData, bài giảng tham chiếu đối sánh với bộ dữ liệu quốc tế kinh điển LaLonde (1986) NSW Job Training được lưu trữ trong các kho dữ liệu học thuật chuẩn của Stata Press, CRAN và Statsmodels:
| Nguồn dữ liệu | Tên bộ dữ liệu / Tệp | Đường dẫn tải về và lệnh nạp trực tiếp |
|---|---|---|
| EcoData Việt Nam | vietlod_propensity_score_matching_ecodata.csvĐánh giá tác động chương trình tín dụng ưu đãi hộ VHLSS |
Tải tệp chuẩn hóa: vietlod_propensity_score_matching_ecodata.csvCổng dữ liệu gốc: Hệ sinh thái dữ liệu EcoData Việt Nam |
| Stata 18 Archive | LaLonde (1986) NSW Job Training | Lệnh nạp trực tiếp: bcuse lalonde, clearKho lưu trữ chính thức: Kho dữ liệu học thuật RePEc SSC bcuse |
| R CRAN Repository | LaLonde (1986) NSW Job Training | Lệnh nạp trực tiếp: data("lalonde", package = "wooldridge")Kho lưu trữ chính thức: Kho lưu trữ CRAN — Gói dữ liệu wooldridge |
| Python Rdatasets | LaLonde (1986) NSW Job Training | Lệnh nạp trực tiếp: sm.datasets.get_rdataset("lalonde", "wooldridge").dataKho lưu trữ chính thức: Kho lưu trữ Rdatasets — Statsmodels |
7. Tài liệu tham khảo
- Rosenbaum, P. R, & Rubin, D. B.(1983). The central role of the propensity score in observational studies for causal effects. Biometrika, 70, số 1, 41–55.
- Dehejia, R. H, & Wahba, S.(2002). Propensity score-matching methods for nonexperimental causal studies. The Review of Economics and Statistics, 84, số 1, 151–161.
- Caliendo, M, & Kopeinig, S.(2008). Some practical guidance for the implementation of propensity score matching. Journal of Economic Surveys, 22, số 1, 31–72.
- Cerulli, G.(2022). Econometric Evaluation of Socio-Economic Programs: Theory and Applications, 2nd ed.. Springer.
- Cameron, A. C, & Trivedi, P. K.(2022). Microeconometrics Using Stata, 2nd ed, Vol. 2, Chương 23–25 & 29: Treatment Effects, DID, RDD and Causal ML. Stata Press.
- Wooldridge, J. M.(2010). Econometric Analysis of Cross Section and Panel Data, 2nd ed, Chương 21: Estimating Average Treatment Effects. MIT Press.
- Stock, J. H, & Watson, M. W.(2020). Introduction to Econometrics, 4th ed, Chương 13: Experiments and Quasi-Experiments. Pearson.
↑ Tài liệu gốc: KINH TẾ LƯỢNG ỨNG DỤNG TOÀN DIỆN TỪ A - Z
↑ Chương và nhóm hiện tại: 9. Suy luận nhân quả và đánh giá tác động chính sách · 9.1. Ghép cặp và cân bằng mẫu
← Bài học trước: 8.4.1. Mô hình định giá tài sản đa nhân tố và kiểm định GRS
→ Bài học tiếp theo: 9.1.2. Cân bằng trọng số Entropy chính xác moment Hainmueller