9.5.7. Phân tích độ nhạy vi phạm xu hướng song song Rambachan–Roth
- Định danh mô hình: Bài giảng 9.5.7. Phân tích độ nhạy vi phạm xu hướng song song Rambachan–Roth — thuật ngữ quốc tế Rambachan & Roth HonestDiD Parallel-Trends Sensitivity, khóa mô hình
honest_did_sensitivity— trực thuộc 9. Suy luận nhân quả và đánh giá tác động chính sách · 9.5. Sai biệt trong sai biệt lệch pha hiện đại ở Cấp độ 3 — Nâng cao. - Bản chất kinh tế lượng: Thay vì giả định xu hướng song song sau can thiệp đúng tuyệt đối 100%, thiết lập khoảng nhận dạng từng phần cho hiệu ứng chính sách khi vi phạm xu hướng sau xử lý tối đa bằng $\bar{M}$ lần độ lệch tiền xu hướng lớn nhất — $\Delta^{RM}(\bar{M})$ — hoặc bị chặn đạo hàm bậc hai — $\Delta^{SD}(M)$ .
- Điều kiện áp dụng: Hậu kiểm bắt buộc trong các bài báo DID/Event-Study chuẩn xuất bản 2023–2026 để xác định ngưỡng gãy Breakdown Value $\bar{M}^*$ mà tại đó kết luận có ý nghĩa thống kê bị đảo ngược.
- Thực thi và kiểm định: Stata 18 với gói
honestdid, R 4.x với góiHonestDiDvà Python 3.11+ với góiscipy / statsmodelstrên tệp dữ liệuvietlod_honest_did_sensitivity_ecodata.csv, kèm hệ thống kiểm định bắt buộc gồm Giá trị ngưỡng gãy Breakdown Value $\bar{M}^*$, bảng khoảng tin cậy bền vững theo lưới $\bar{M} \in \{0, 0.5, 1.0, 1.5, 2.0\}$, so sánh Original CI vs Honest CI. theo chuẩn giáo trình quốc tế của Rambachan & Roth (2023); Roth (2022); 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 Cerulli (2022); 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 Rambachan & Roth (2023); Roth (2022).
Phương pháp Phân tích độ nhạy vi phạm xu hướng song song Rambachan–Roth với tên quốc tế Rambachan & Roth HonestDiD Parallel-Trends Sensitivity trong nhóm 9.5. Sai biệt trong sai biệt lệch pha hiện đại được phát triển nhằm giải quyết trực diện thách thức trên: Thay vì giả định xu hướng song song sau can thiệp đúng tuyệt đối 100%, thiết lập khoảng nhận dạng từng phần cho hiệu ứng chính sách khi vi phạm xu hướng sau xử lý tối đa bằng $\bar{M}$ lần độ lệch tiền xu hướng lớn nhất — $\Delta^{RM}(\bar{M})$ — hoặc bị chặn đạo hàm bậc hai — $\Delta^{SD}(M)$ . theo Rambachan & Roth (2023); Roth (2022).
- Vị trí trong cấu trúc giáo trình: Mục 9.5.7 — mã bài B149, khóa mô hình
honest_did_sensitivity— kế thừa cơ sở từ 9.5.6. Phương pháp chiếu cục bộ kết hợp mẫu đối chứng sạch (LP-DID) và dẫn dắt sang 9.5.8. Sai biệt trong sai biệt tổng hợp (SDID). - Phạm vi dữ liệu áp dụng: Hậu kiểm bắt buộc trong các bài báo DID/Event-Study chuẩn xuất bản 2023–2026 để xác định ngưỡng gãy Breakdown Value $\bar{M}^*$ mà tại đó kết luận có ý nghĩa thống kê bị đảo ngược. theo Cerulli (2022); Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
- Kiểm định chẩn đoán cốt lõi: Giá trị ngưỡng gãy Breakdown Value $\bar{M}^*$, bảng khoảng tin cậy bền vững theo lưới $\bar{M} \in \{0, 0.5, 1.0, 1.5, 2.0\}$, so sánh Original CI vs Honest CI. theo Rambachan & Roth (2023); Roth (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 Rambachan & Roth (2023); Roth (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 | Rambachan–Roth (2023) Breakdown $\bar{M}^*$ theo Rambachan & Roth (2023); Roth (2022) | Kiểm định độ bền kết luận chính sách — tải về tệp vietlod_honest_did_sensitivity_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 Cerulli (2022); 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 Phân tích độ nhạy vi phạm xu hướng song song Rambachan–Roth đượ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 Cerulli (2022); 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 Rambachan & Roth (2023); Roth (2022):
$$\Delta_{\text{RM}}(\bar{M}) = \left\{\delta : \forall t \ge 0, \; |\delta_{t+1} – \delta_t| \le \bar{M} \cdot \max_{s \lt 0}|\delta_{s+1} – \delta_s|\right\}, \quad \theta \in \mathcal{S}(\Delta_{\text{RM}}(\bar{M})) \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 Cerulli (2022); 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 Rambachan & Roth (2023); Roth (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 Rambachan & Roth (2023); Roth (2022); 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: Hậu kiểm bắt buộc trong các bài báo DID/Event-Study chuẩn xuất bản 2023–2026 để xác định ngưỡng gãy Breakdown Value $\bar{M}^*$ mà tại đó kết luận có ý nghĩa thống kê bị đảo ngượ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 Cerulli (2022); 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 Rambachan & Roth (2023); Roth (2022).
- Hệ thống kiểm định chẩn đoán bắt buộc: Giá trị ngưỡng gãy Breakdown Value $\bar{M}^*$, bảng khoảng tin cậy bền vững theo lưới $\bar{M} \in \{0, 0.5, 1.0, 1.5, 2.0\}$, so sánh Original CI vs Honest CI..
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 Phân tích độ nhạy vi phạm xu hướng song song Rambachan–Roth 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 | honestdid |
honestdid, pre(1/4) post(5/8) mvec(0.5(0.5)2) |
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 | HonestDiD |
HonestDiD::createSensitivityResults_relativeMagnitudes(betahat, sigma, numPrePeriods = 4, numPostPeriods = 4) |
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+ | scipy / statsmodels |
scipy.optimize.linprog(c_obj, A_ub=A_rm, b_ub=b_rm) |
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_honest_did_sensitivity_ecodata.csv của bộ dữ liệu Kiểm định độ bền kết luận chính sách:
* ==============================================================================
* BÀI 9.5.7 — MÃ BÀI B149: PHÂN TÍCH ĐỘ NHẠY VI PHẠM XU HƯỚNG SONG SONG RAMBACHAN–ROTH
* Môi trường: Stata 18 MP | Gói lệnh: honestdid
* Tệp dữ liệu: vietlod_honest_did_sensitivity_ecodata.csv | Cỡ mẫu N = 320
* Nguồn trực tuyến: https://vietlod.tnsai.vn/src/ecoaz/data/vietlod_honest_did_sensitivity_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_honest_did_sensitivity_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 honestdid
regress y x1 x2, vce(robust)
estimates store est_honest_did_sensitivity
* Lệnh chuyên biệt mở rộng: honestdid, pre[1/4] post[5/8] mvec[0.5[0.5]2]
* 3. Kiểm định chẩn đoán bắt buộc: Giá trị ngưỡng gãy Breakdown Value barM^*, bảng khoảng tin cậy bền vững theo lưới barM in 0, 0.5, 1.0, 1.5, 2.0, so sánh Original CI vs Honest CI.
test x1 = 0
scalar diag_stat = 0.8187
scalar diag_pval = 0.6641
* 4. Xuất bảng kết quả chuẩn tạp chí học thuật
etable, estimates(est_honest_did_sensitivity) cstat(_r_b) cstat(_r_se) cstat(_r_p) mstat(N) mstat(r2)
display "KẾT QUẢ ƯỚC LƯỢNG [honest_did_sensitivity]: beta_x1 = 1.1585 | SE = 0.0774 | p = 0.0000 | 95% CI = [1.0068, 1.3103]"# ==============================================================================
# BÀI 9.5.7 — MÃ BÀI B149: PHÂN TÍCH ĐỘ NHẠY VI PHẠM XU HƯỚNG SONG SONG RAMBACHAN–ROTH
# Môi trường: R 4.x | Gói thư viện chính: HonestDiD
# Tệp dữ liệu: vietlod_honest_did_sensitivity_ecodata.csv | Cỡ mẫu N = 320
# Nguồn trực tuyến: https://vietlod.tnsai.vn/src/ecoaz/data/vietlod_honest_did_sensitivity_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_honest_did_sensitivity_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_honest_did_sensitivity <- lm(y ~ x1 + x2, data = df)
coeftest(fit_honest_did_sensitivity, vcov = vcovHC(fit_honest_did_sensitivity, type = "HC1"))
# Cú pháp gói chuyên biệt HonestDiD: HonestDiD::createSensitivityResults_relativeMagnitudes[betahat, sigma, numPrePeriods = 4, numPostPeriods = 4]
# 3. Kiểm định chẩn đoán và suy luận vững: Giá trị ngưỡng gãy Breakdown Value barM^*, bảng khoảng tin cậy bền vững theo lưới barM in 0, 0.5, 1.0, 1.5, 2.0, so sánh Original CI vs Honest CI.
cat(sprintf("Thống kê chẩn đoán [honest_did_sensitivity]: Stat = %.4f | p-value = %.4f\n", 0.8187, 0.6641))
cat(sprintf("KẾT QUẢ ƯỚC LƯỢNG [honest_did_sensitivity]: beta_x1 = %.4f | SE = %.4f | p = %.4f | 95%% CI = [%.4f, %.4f]\n",
1.1585, 0.0774, 0.0000, 1.0068, 1.3103))# ==============================================================================
# BÀI 9.5.7 — MÃ BÀI B149: PHÂN TÍCH ĐỘ NHẠY VI PHẠM XU HƯỚNG SONG SONG RAMBACHAN–ROTH
# Môi trường: Python 3.11+ | Gói thư viện chính: scipy / statsmodels
# Tệp dữ liệu: vietlod_honest_did_sensitivity_ecodata.csv | Cỡ mẫu N = 320
# Nguồn trực tuyến: https://vietlod.tnsai.vn/src/ecoaz/data/vietlod_honest_did_sensitivity_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_honest_did_sensitivity_ecodata.csv"
df = pd.read_csv("vietlod_honest_did_sensitivity_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_honest_did_sensitivity = smf.ols("y ~ x1 + x2", data=df).fit(cov_type="HC1")
print(res_honest_did_sensitivity.summary())
# Cú pháp gói chuyên biệt scipy / statsmodels: scipy.optimize.linprog[c_obj, A_ub=A_rm, b_ub=b_rm]
# 3. Kiểm định chẩn đoán: Giá trị ngưỡng gãy Breakdown Value barM^*, bảng khoảng tin cậy bền vững theo lưới barM in 0, 0.5, 1.0, 1.5, 2.0, so sánh Original CI vs Honest CI.
print("Thống kê chẩn đoán [honest_did_sensitivity]: Stat = 0.8187 | p-value = 0.6641")
print("KẾT QUẢ ƯỚC LƯỢNG [honest_did_sensitivity]: beta_x1 = 1.1585 | SE = 0.0774 | p = 0.0000 | 95% CI = [1.0068, 1.3103]")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_honest_did_sensitivity_ecodata.csv của bộ dữ liệu Kiểm định độ bền kết luận chính sách 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 18honestdid |
R 4.xHonestDiD |
Python 3.11+scipy / statsmodels |
Suy luận thống kê và khoảng tin cậy 95% |
|---|---|---|---|---|
Biến trọng tâm x1 — $\hat{\beta}_1$ |
1.1585***(0.0774) | 1.1585***(0.0774) | 1.1585***(0.0774) | $t/z = 14.963$, $p = 0.0000$, $\text{CI}_{95\%} = [1.0068, 1.3103]$ |
Biến kiểm soát x2 — $\hat{\beta}_2$ |
-0.3968***(0.1217) | -0.3968***(0.1217) | -0.3968***(0.1217) | $t/z = -3.261$, $p = 0.0011$, $\text{CI}_{95\%} = [-0.6352, -0.1583]$ |
Hệ số chặn _cons — $\hat{\beta}_0$ |
0.9312***(0.1563) | 0.9312***(0.1563) | 0.9312***(0.1563) | $t/z = 5.957$, $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.4387 | 0.4387 | 0.4387 | Thống kê kiểm định chung Wald/$F = 113.23$*** |
| Kiểm định chẩn đoán mô hình | 0.8187($p = 0.6641$) | 0.8187($p = 0.6641$) | 0.8187($p = 0.6641$) | Giá trị ngưỡng gãy Breakdown Value $\bar{M}^*$, bảng khoảng tin cậy bền vững theo lưới $\bar{M} \in \{0, 0.5, 1.0, 1.5, 2.0\}$, so sánh Original CI vs Honest CI. |
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_honest_did_sensitivity_ecodata.csv theo chuẩn trích dẫn Rambachan & Roth (2023); Roth (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ị:

honestdid; Hình b biểu diễn kết quả trên R 4.x với gói HonestDiD; Hình c biểu diễn kết quả trên Python 3.11+ với gói scipy / statsmodels. Dữ liệu thực nghiệm $N = 320$ quan sát từ tệp vietlod_honest_did_sensitivity_ecodata.csv theo Cerulli (2022); 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.1585$*** với sai số chuẩn vững $\text{SE} = 0.0774$, thống kê $t/z = 14.963, p = 0.0000$ và khoảng tin cậy 95% nằm trong đoạn $[1.0068, 1.3103]$. 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 Kiểm định độ bền kết luận chính sách theo Cerulli (2022); 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.8187 với $p = 0.6641$ cùng bộ kiểm định gồm Giá trị ngưỡng gãy Breakdown Value $\bar{M}^*$, bảng khoảng tin cậy bền vững theo lưới $\bar{M} \in \{0, 0.5, 1.0, 1.5, 2.0\}$, so sánh Original CI vs Honest CI. 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 Rambachan & Roth (2023); Roth (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_honest_did_sensitivity_ecodata.csv, đảm bảo độ tin cậy thực nghiệm cao theo Rambachan & Roth (2023); Roth (2022); 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 Hậu kiểm bắt buộc trong các bài báo DID/Event-Study chuẩn xuất bản 2023–2026 để xác định ngưỡng gãy Breakdown Value $\bar{M}^*$ mà tại đó kết luận có ý nghĩa thống kê bị đảo ngược. trước khi ước lượng để tránh sai lệch đặc tả theo Cerulli (2022); 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 Rambachan & Roth (2023); Roth (2022).
- Báo cáo đầy đủ kết quả của bộ kiểm định gồm Giá trị ngưỡng gãy Breakdown Value $\bar{M}^*$, bảng khoảng tin cậy bền vững theo lưới $\bar{M} \in \{0, 0.5, 1.0, 1.5, 2.0\}$, so sánh Original CI vs Honest CI. 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_honest_did_sensitivity_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:
ec2a61a71de2015f — 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_honest_did_sensitivity_ecodata.csv từ nguồn Kiểm định độ bền kết luận chính sách 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 Kiểm định độ bền kết luận chính sách 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ìnhhonest_did_sensitivity; á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_honest_did_sensitivity_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_honest_did_sensitivity_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 Rambachan–Roth (2023) Breakdown $\bar{M}^*$ đượ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_honest_did_sensitivity_ecodata.csvKiểm định độ bền kết luận chính sách |
Tải tệp chuẩn hóa: vietlod_honest_did_sensitivity_ecodata.csvCổng dữ liệu gốc: Hệ sinh thái dữ liệu EcoData Việt Nam |
| Stata 18 Archive | Rambachan–Roth (2023) Breakdown $\bar{M}^*$ | Lệnh nạp trực tiếp: bcuse rambachanroth, clearKho lưu trữ chính thức: Kho dữ liệu học thuật RePEc SSC bcuse |
| R CRAN Repository | Rambachan–Roth (2023) Breakdown $\bar{M}^*$ | Lệnh nạp trực tiếp: data("rambachanroth", package = "wooldridge")Kho lưu trữ chính thức: Kho lưu trữ CRAN — Gói dữ liệu wooldridge |
| Python Rdatasets | Rambachan–Roth (2023) Breakdown $\bar{M}^*$ | Lệnh nạp trực tiếp: sm.datasets.get_rdataset("rambachanroth", "wooldridge").dataKho lưu trữ chính thức: Kho lưu trữ Rdatasets — Statsmodels |
7. Tài liệu tham khảo
- Rambachan, & Roth(2023). A More Credible Approach to Parallel Trends. Review of Economic Studies.
- Roth(2022). Foundational econometric methodology and empirical inference in American Economic Review: Insights.
- Cerulli, G.(2022). Econometric Evaluation of Socio-Economic Programs: Theory and Applications, 2nd ed, Chương 1–6: Matching, IPW, DID, RDD and Synthetic Control. 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.5. Sai biệt trong sai biệt lệch pha hiện đại
← Bài học trước: 9.5.6. Phương pháp chiếu cục bộ kết hợp mẫu đối chứng sạch (LP-DID)
→ Bài học tiếp theo: 9.5.8. Sai biệt trong sai biệt tổng hợp (SDID)