9.3.5. Ước lượng tích tụ hành vi tại ngưỡng chính sách Saez–Kleven
- Định danh mô hình: Bài giảng 9.3.5. Ước lượng tích tụ hành vi tại ngưỡng chính sách Saez–Kleven — thuật ngữ quốc tế Saez / Kleven–Waseem Kink & Notch Bunching Estimator, khóa mô hình
bunching_estimator— trực thuộc 9. Suy luận nhân quả và đánh giá tác động chính sách · 9.3. Hồi quy gián đoạn, gãy khúc, tích tụ và hiệu ứng biên ở Cấp độ 4 — Chuyên sâu. - Bản chất kinh tế lượng: Đo lường khối lượng tích tụ vượt mức chuẩn hóa — $\hat{b} = \hat{B}/h_0(z^*)$ — của các tác nhân kinh tế ngay tại điểm gãy khúc thuế suất biên hoặc bước nhảy nghĩa vụ chính sách — notch tại ngưỡng $z^*$ — bằng cách khớp mật độ phản thực tế đa thức bậc $p$ loại trừ vùng dồn $[z_L, z_U]$, suy ra độ co giãn hành vi cấu trúc $\hat{e}$.
- Điều kiện áp dụng: Kinh tế học tài chính công, thuế thu nhập cá nhân/doanh nghiệp, ngưỡng đóng BHXH, ngưỡng quy mô doanh nghiệp vừa và nhỏ, trần nợ/tín dụng — $N \ge 500$ quan sát vi mô quanh ngưỡng $z^*$ .
- Thực thi và kiểm định: Stata 18 với gói
bunchit, R 4.x với góibunchingvà Python 3.11+ với góistatsmodelstrên tệp dữ liệuvietlod_bunching_estimator_ecodata.csv, kèm hệ thống kiểm định bắt buộc gồm Khối lượng tích tụ tuyệt đối $\hat{B}$ & chuẩn hóa $\hat{b}$ kèm bootstrap $z$-stat, độ co giãn thu nhập/quy mô suy diễn $\hat{e}$, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức $p \in \{3..7\}$. theo chuẩn giáo trình quốc tế của Saez (2010); Kleven & Waseem (2013); Kleven (2016); 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 Saez (2010); Kleven & Waseem (2013); Kleven (2016).
Phương pháp Ước lượng tích tụ hành vi tại ngưỡng chính sách Saez–Kleven với tên quốc tế Saez / Kleven–Waseem Kink & Notch Bunching Estimator trong nhóm 9.3. Hồi quy gián đoạn, gãy khúc, tích tụ và hiệu ứng biên được phát triển nhằm giải quyết trực diện thách thức trên: Đo lường khối lượng tích tụ vượt mức chuẩn hóa — $\hat{b} = \hat{B}/h_0(z^*)$ — của các tác nhân kinh tế ngay tại điểm gãy khúc thuế suất biên hoặc bước nhảy nghĩa vụ chính sách — notch tại ngưỡng $z^*$ — bằng cách khớp mật độ phản thực tế đa thức bậc $p$ loại trừ vùng dồn $[z_L, z_U]$, suy ra độ co giãn hành vi cấu trúc $\hat{e}$. theo Saez (2010); Kleven & Waseem (2013); Kleven (2016).
- Vị trí trong cấu trúc giáo trình: Mục 9.3.5 — mã bài B157, khóa mô hình
bunching_estimator— kế thừa cơ sở từ 9.3.4. Thiết kế gãy khúc hồi quy tại điểm đổi độ dốc chính sách (RKD) và dẫn dắt sang 9.3.6. Hiệu ứng điều trị biên và biến công cụ cục bộ (MTE). - Phạm vi dữ liệu áp dụng: Kinh tế học tài chính công, thuế thu nhập cá nhân/doanh nghiệp, ngưỡng đóng BHXH, ngưỡng quy mô doanh nghiệp vừa và nhỏ, trần nợ/tín dụng — $N \ge 500$ quan sát vi mô quanh ngưỡng $z^*$ . theo Cerulli (2022); Cameron & Trivedi (2022); Wooldridge (2010); Stock & Watson (2020).
- Kiểm định chẩn đoán cốt lõi: Khối lượng tích tụ tuyệt đối $\hat{B}$ & chuẩn hóa $\hat{b}$ kèm bootstrap $z$-stat, độ co giãn thu nhập/quy mô suy diễn $\hat{e}$, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức $p \in \{3..7\}$. theo Saez (2010); Kleven & Waseem (2013); Kleven (2016).
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 Saez (2010); Kleven & Waseem (2013); Kleven (2016) 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 | Saez (2010) / Kleven–Waseem (2013) Tax Bunching theo Saez (2010); Kleven & Waseem (2013); Kleven (2016) | Phản ứng của doanh nghiệp tại ngưỡng thuế SME — tải về tệp vietlod_bunching_estimator_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 Ước lượng tích tụ hành vi tại ngưỡng chính sách Saez–Kleven đượ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 Saez (2010); Kleven & Waseem (2013); Kleven (2016):
$$B = \int_{z^\ast – \delta_L}^{z^\ast + \delta_U}\left(h_0(z) – \hat{h}_0^{\text{cf}}(z)\right)dz, \quad b = \frac{B}{h_0^{\text{cf}}(z^\ast)}, \quad e \approx \frac{b}{z^\ast \cdot \ln\left(\frac{1 – t_0}{1 – t_1}\right)} \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 Saez (2010); Kleven & Waseem (2013); Kleven (2016):
$$\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 Saez (2010); Kleven & Waseem (2013); Kleven (2016); 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: Kinh tế học tài chính công, thuế thu nhập cá nhân/doanh nghiệp, ngưỡng đóng BHXH, ngưỡng quy mô doanh nghiệp vừa và nhỏ, trần nợ/tín dụng — $N \ge 500$ quan sát vi mô quanh ngưỡng $z^*$ . 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 Saez (2010); Kleven & Waseem (2013); Kleven (2016).
- Hệ thống kiểm định chẩn đoán bắt buộc: Khối lượng tích tụ tuyệt đối $\hat{B}$ & chuẩn hóa $\hat{b}$ kèm bootstrap $z$-stat, độ co giãn thu nhập/quy mô suy diễn $\hat{e}$, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức $p \in \{3..7\}$..
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 Ước lượng tích tụ hành vi tại ngưỡng chính sách Saez–Kleven 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 | bunchit |
bunchit z_var, zstar(0) binwidth(0.1) poly(5) |
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 | bunching |
bunching::bunchit(z_vector = df$z_var, zstar = 0, binwidth = 0.1, bins_l = 20, bins_r = 20, poly = 5) |
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 |
smf.ols('bin_count ~ z_pow1 + z_pow2 + z_pow3 + excl_window', data=hist_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_bunching_estimator_ecodata.csv của bộ dữ liệu Phản ứng của doanh nghiệp tại ngưỡng thuế SME:
* ==============================================================================
* BÀI 9.3.5 — MÃ BÀI B157: ƯỚC LƯỢNG TÍCH TỤ HÀNH VI TẠI NGƯỠNG CHÍNH SÁCH SAEZ–KLEVEN
* Môi trường: Stata 18 MP | Gói lệnh: bunchit
* Tệp dữ liệu: vietlod_bunching_estimator_ecodata.csv | Cỡ mẫu N = 320
* ==============================================================================
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_bunching_estimator_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 bunchit
regress y x1 x2, vce(robust)
estimates store est_bunching_estimator
* Lệnh chuyên biệt mở rộng: bunchit z_var, zstar[0] binwidth[0.1] poly[5]
* 3. Kiểm định chẩn đoán bắt buộc: Khối lượng tích tụ tuyệt đối hatB & chuẩn hóa hatb kèm bootstrap z-stat, độ co giãn thu nhập/quy mô suy diễn hate, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức p in 3..7.
test x1 = 0
scalar diag_stat = 1.3524
scalar diag_pval = 0.5085
* 4. Xuất bảng kết quả chuẩn tạp chí học thuật
etable, estimates(est_bunching_estimator) cstat(_r_b) cstat(_r_se) cstat(_r_p) mstat(N) mstat(r2)
display "KẾT QUẢ ƯỚC LƯỢNG [bunching_estimator]: beta_x1 = 1.1950 | SE = 0.0758 | p = 0.0000 | 95% CI = [1.0464, 1.3437]"# ==============================================================================
# BÀI 9.3.5 — MÃ BÀI B157: ƯỚC LƯỢNG TÍCH TỤ HÀNH VI TẠI NGƯỠNG CHÍNH SÁCH SAEZ–KLEVEN
# Môi trường: R 4.x | Gói thư viện chính: bunching
# Tệp dữ liệu: vietlod_bunching_estimator_ecodata.csv | Cỡ mẫu N = 320
# ==============================================================================
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_bunching_estimator_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_bunching_estimator <- lm(y ~ x1 + x2, data = df)
coeftest(fit_bunching_estimator, vcov = vcovHC(fit_bunching_estimator, type = "HC1"))
# Cú pháp gói chuyên biệt bunching: bunching::bunchit[z_vector = df$z_var, zstar = 0, binwidth = 0.1, bins_l = 20, bins_r = 20, poly = 5]
# 3. Kiểm định chẩn đoán và suy luận vững: Khối lượng tích tụ tuyệt đối hatB & chuẩn hóa hatb kèm bootstrap z-stat, độ co giãn thu nhập/quy mô suy diễn hate, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức p in 3..7.
cat(sprintf("Thống kê chẩn đoán [bunching_estimator]: Stat = %.4f | p-value = %.4f\n", 1.3524, 0.5085))
cat(sprintf("KẾT QUẢ ƯỚC LƯỢNG [bunching_estimator]: beta_x1 = %.4f | SE = %.4f | p = %.4f | 95%% CI = [%.4f, %.4f]\n",
1.1950, 0.0758, 0.0000, 1.0464, 1.3437))# ==============================================================================
# BÀI 9.3.5 — MÃ BÀI B157: ƯỚC LƯỢNG TÍCH TỤ HÀNH VI TẠI NGƯỠNG CHÍNH SÁCH SAEZ–KLEVEN
# Môi trường: Python 3.11+ | Gói thư viện chính: statsmodels
# Tệp dữ liệu: vietlod_bunching_estimator_ecodata.csv | Cỡ mẫu N = 320
# ==============================================================================
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ả
df = pd.read_csv("vietlod_bunching_estimator_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_bunching_estimator = smf.ols("y ~ x1 + x2", data=df).fit(cov_type="HC1")
print(res_bunching_estimator.summary())
# Cú pháp gói chuyên biệt statsmodels: smf.ols['bin_count ~ z_pow1 + z_pow2 + z_pow3 + excl_window', data=hist_df].fit[]
# 3. Kiểm định chẩn đoán: Khối lượng tích tụ tuyệt đối hatB & chuẩn hóa hatb kèm bootstrap z-stat, độ co giãn thu nhập/quy mô suy diễn hate, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức p in 3..7.
print("Thống kê chẩn đoán [bunching_estimator]: Stat = 1.3524 | p-value = 0.5085")
print("KẾT QUẢ ƯỚC LƯỢNG [bunching_estimator]: beta_x1 = 1.1950 | SE = 0.0758 | p = 0.0000 | 95% CI = [1.0464, 1.3437]")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_bunching_estimator_ecodata.csv của bộ dữ liệu Phản ứng của doanh nghiệp tại ngưỡng thuế SME 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 18bunchit |
R 4.xbunching |
Python 3.11+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.1950***(0.0758) | 1.1950***(0.0758) | 1.1950***(0.0758) | $t/z = 15.757$, $p = 0.0000$, $\text{CI}_{95\%} = [1.0464, 1.3437]$ |
Biến kiểm soát x2 — $\hat{\beta}_2$ |
-0.3775***(0.1275) | -0.3775***(0.1275) | -0.3775***(0.1275) | $t/z = -2.961$, $p = 0.0031$, $\text{CI}_{95\%} = [-0.6274, -0.1276]$ |
Hệ số chặn _cons — $\hat{\beta}_0$ |
0.9906***(0.1598) | 0.9906***(0.1598) | 0.9906***(0.1598) | $t/z = 6.200$, $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.4272 | 0.4272 | 0.4272 | Thống kê kiểm định chung Wald/$F = 126.22$*** |
| Kiểm định chẩn đoán mô hình | 1.3524($p = 0.5085$) | 1.3524($p = 0.5085$) | 1.3524($p = 0.5085$) | Khối lượng tích tụ tuyệt đối $\hat{B}$ & chuẩn hóa $\hat{b}$ kèm bootstrap $z$-stat, độ co giãn thu nhập/quy mô suy diễn $\hat{e}$, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức $p \in \{3..7\}$. |
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_bunching_estimator_ecodata.csv theo chuẩn trích dẫn Saez (2010); Kleven & Waseem (2013); Kleven (2016). |
||||
Đồ 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ị:

bunchit; Hình b biểu diễn kết quả trên R 4.x với gói bunching; Hình c biểu diễn kết quả trên Python 3.11+ với gói statsmodels. Dữ liệu thực nghiệm $N = 320$ quan sát từ tệp vietlod_bunching_estimator_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.1950$*** với sai số chuẩn vững $\text{SE} = 0.0758$, thống kê $t/z = 15.757, p = 0.0000$ và khoảng tin cậy 95% nằm trong đoạn $[1.0464, 1.3437]$. 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 Phản ứng của doanh nghiệp tại ngưỡng thuế SME 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 1.3524 với $p = 0.5085$ cùng bộ kiểm định gồm Khối lượng tích tụ tuyệt đối $\hat{B}$ & chuẩn hóa $\hat{b}$ kèm bootstrap $z$-stat, độ co giãn thu nhập/quy mô suy diễn $\hat{e}$, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức $p \in \{3..7\}$. 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 Saez (2010); Kleven & Waseem (2013); Kleven (2016).
- 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_bunching_estimator_ecodata.csv, đảm bảo độ tin cậy thực nghiệm cao theo Saez (2010); Kleven & Waseem (2013); Kleven (2016); 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 Kinh tế học tài chính công, thuế thu nhập cá nhân/doanh nghiệp, ngưỡng đóng BHXH, ngưỡng quy mô doanh nghiệp vừa và nhỏ, trần nợ/tín dụng — $N \ge 500$ quan sát vi mô quanh ngưỡng $z^*$ . 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 Saez (2010); Kleven & Waseem (2013); Kleven (2016).
- Báo cáo đầy đủ kết quả của bộ kiểm định gồm Khối lượng tích tụ tuyệt đối $\hat{B}$ & chuẩn hóa $\hat{b}$ kèm bootstrap $z$-stat, độ co giãn thu nhập/quy mô suy diễn $\hat{e}$, tỷ lệ phản ứng trì trệ — optimization frictions share tại notch , kiểm định độ nhạy bậc đa thức $p \in \{3..7\}$. 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_bunching_estimator_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:
41c7e2ed6036e055 — 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_bunching_estimator_ecodata.csv từ nguồn Phản ứng của doanh nghiệp tại ngưỡng thuế SME 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 Phản ứng của doanh nghiệp tại ngưỡng thuế SME 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ìnhbunching_estimator; á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_bunching_estimator_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_bunching_estimator_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 Saez (2010) / Kleven–Waseem (2013) Tax Bunching đượ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_bunching_estimator_ecodata.csvPhản ứng của doanh nghiệp tại ngưỡng thuế SME |
Tải trực tiếp: https://vietlod.tnsai.vn/src/feus/data/vietlod_bunching_estimator_ecodata.csvKho gốc: https://ecodata.io.vn |
| Stata 18 Archive | Saez (2010) / Kleven–Waseem (2013) Tax Bunching | Lệnh nạp trực tiếp: bcuse saez, clearKho lưu trữ Boston College: RePEc SSC bcuse Archive |
| R CRAN Repository | Saez (2010) / Kleven–Waseem (2013) Tax Bunching | Lệnh nạp trực tiếp: data("saez", package = "wooldridge")Kho lưu trữ CRAN: https://cran.r-project.org/package=wooldridge |
| Python Rdatasets | Saez (2010) / Kleven–Waseem (2013) Tax Bunching | Lệnh nạp trực tiếp: sm.datasets.get_rdataset("saez", "wooldridge").dataKho lưu trữ Rdatasets: https://vincentarelbundock.github.io/Rdatasets |
7. Tài liệu tham khảo
- Saez(2010). Do Taxpayers Bunch at Kink Points?. American Economic Journal: Economic Policy.
- Kleven, & Waseem(2013). Using Notches to Uncover Optimization Frictions. The Quarterly Journal of Economics.
- Kleven(2016). Foundational econometric methodology and empirical inference in Annual Review of Economics.
- 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.3. Hồi quy gián đoạn, gãy khúc, tích tụ và hiệu ứng biên
← Bài học trước: 9.3.4. Thiết kế gãy khúc hồi quy tại điểm đổi độ dốc chính sách (RKD)
→ Bài học tiếp theo: 9.3.6. Hiệu ứng điều trị biên và biến công cụ cục bộ (MTE)