3 样本选择偏误
样本选择问题的关键不在于少了多少观测,而在于进入样本的规则是否与结果方程中的不可观测因素相关。研究者看到的数据,往往只是经过制度、市场、个体决策或数据可得性筛选后的样本。
第二章讨论了政策如何进入数据。政策进入数据以后,我们还要追问另一个更基础的问题:哪些个体、企业、地区或项目真的被我们观察到了?
很多经验研究看似有完整数据,实际上只观察到一部分对象。比如:
- 工资只在就业者中可见;
- 企业绩效只在存活企业中可见;
- 创新产出可能只在申请专利或披露研发信息的企业中可见;
- 科创板研究中,最终上市企业已经经过申报、受理、问询、注册和发行等多重筛选;
- 政府引导基金研究中,被投企业通常不是随机企业,而是基金管理人、地方政府和产业目标共同筛选出的对象。
这类问题不能简单归结为「样本量变少」。真正的问题是:进入样本的机制是否改变了结果变量和解释变量之间的关系。
本章先用一个最小模拟例子说明样本选择偏误的基本机制,再用女性工资和劳动参与的 Heckman 经典案例讲清选择方程与结果方程,最后回到政策评估中的科创板、政府引导基金和政策试点。
3.1 删样本本身不一定造成偏误
样本选择偏误经常被误解为「删掉一部分样本就会有偏」。这个理解过于粗糙。删样本是否造成 OLS 有偏,取决于样本进入规则是否破坏回归所需的外生性条件。
考虑一个最简单的数据生成过程:
\[ y_i=\beta x_i+u_i,\qquad \beta=1 \tag{3.1}\]
其中,\(x_i\) 与 \(u_i\) 相互独立。完整样本中,OLS 能够识别 \(\beta\),因为:
\[ E(u_i\mid x_i)=0 \tag{3.2}\]
现在比较两种样本限制。
第一种限制是只保留 \(x_i\ge0\) 的观测。进入样本的规则只取决于解释变量 \(x_i\)。在上述设定下,这种筛选改变了 \(x_i\) 的分布,也减少了样本量,但没有把误差项 \(u_i\) 带入选择过程。因此,在被保留样本中,\(u_i\) 与 \(x_i\) 仍然没有系统性相关。
第二种限制是只保留 \(y_i\ge0\) 的观测。由于 \(y_i=x_i+u_i\),这个进入规则等价于:
\[ x_i+u_i\ge0 \tag{3.3}\]
这时,误差项 \(u_i\) 直接进入了样本选择过程。低 \(x_i\) 的观测如果要进入样本,就需要较高的 \(u_i\) 把 \(y_i\) 推到 0 以上;高 \(x_i\) 的观测即使 \(u_i\) 较低,也可能进入样本。结果是,在被选择出来的样本中,\(x_i\) 和 \(u_i\) 被人为制造出相关性。OLS 的关键条件被破坏:
\[ E(u_i\mid x_i,S_i=1)\ne0 \tag{3.4}\]
图 3.1 直观展示了这两类筛选规则的差别。核心不是删掉了多少点,而是筛选规则是否把误差项带进来。
另一幅图更直接地展示了 OLS 斜率的变化。完整样本和只保留 \(x_i\ge0\) 的样本中,拟合线差异不大;只保留 \(y_i\ge0\) 的样本中,拟合线明显变平,因为选择规则已经改变了 \(x_i\) 与误差项之间的关系。
这个例子给第三章定下基调:样本选择问题不是「数据少了」的问题,而是「谁被看见」的问题。
如果进入样本的规则只改变解释变量的分布,但没有改变误差项与解释变量之间的关系,OLS 未必有偏。若进入样本的规则依赖结果变量或结果方程中的不可观测因素,OLS 通常会出现偏误。
3.2 主案例:女性工资与劳动参与
Heckman 模型最经典的入口是女性工资和劳动参与。研究者想估计教育、经验和居住地等因素对工资的影响,但工资只有在女性进入劳动市场时才可见。未参加劳动市场的女性并不是不存在,只是工资没有被观察到。
这时,研究总体和观察样本之间出现了差别。
- 研究总体
- 所有适龄女性;
- 每个人都有潜在市场工资;
- 但潜在工资并不总是被观察到。
- 观察样本
- 进入劳动市场的女性;
- 她们有工资数据;
- 工资方程只能在这部分样本中直接估计。
- 未被观察的结果
- 未进入劳动市场的女性没有工资数据;
- 她们可能有潜在工资能力;
- 但研究者看不到其工资结果。
问题在于,劳动参与本身不是随机的。是否进入劳动市场,可能取决于教育、年龄、工作经验、家庭收入、丈夫工资、子女数量、照护责任、本地就业机会以及个人偏好。其中一些因素也可能影响潜在工资。于是,仅在就业女性中估计工资方程,得到的不一定是教育对所有女性潜在工资的影响。
可以把数据生成过程分成两步:
所有女性
↓
是否进入劳动市场
↓
进入劳动市场:工资被观察到
未进入劳动市场:工资不可见
↓
研究者只能在工资可见样本中估计工资方程
这种结构正是 Heckman 选择模型要处理的问题。
3.3 选择方程和结果方程
Heckman 思维的核心是承认数据生成过程包含两条方程。
第一条是选择方程,描述谁进入可观察样本:
\[ S_i^*=Z_i'\gamma+v_i,\qquad S_i=\mathbf{1}\{S_i^*>0\} \tag{3.5}\]
其中,\(S_i^*\) 是不可观察的选择倾向,\(S_i\) 是是否进入样本的实际状态,\(Z_i\) 是影响选择的变量,\(v_i\) 是选择方程中的不可观测因素。
第二条是结果方程,描述进入样本以后结果变量是多少:
\[ Y_i=X_i'\beta+u_i,\qquad Y_i\text{ 仅当 }S_i=1\text{ 时被观察到} \tag{3.6}\]
其中,\(Y_i\) 是结果变量,\(X_i\) 是结果方程中的解释变量,\(u_i\) 是结果方程中的不可观测因素。
样本选择偏误来自 \(u_i\) 与 \(v_i\) 的相关性。如果二者相关,意味着影响个体进入样本的不可观测因素,也影响结果变量。此时,仅在 \(S_i=1\) 的样本中估计结果方程,会导致误差项条件均值不为 0。
用女性工资例子来说:
- 劳动参与方程解释
inlf; - 工资方程解释
wage或lwage; - 如果影响女性是否工作的不可观测因素,也影响其潜在工资,直接在就业女性样本中估计工资方程就可能有偏。
Heckman 模型的目标不是把所有内生性问题自动修好,而是针对这一类「结果变量只在被选择样本中可见」的问题,显式建模选择过程。
3.4 一个 Stata 实例
Stata 自带的 mroz.dta 数据提供了一个适合教学的例子。数据可以在线读入:
webuse "mroz.dta", clear
des wage educ exper expersq city age faminc kidslt6
heckman wage educ exper expersq city, ///
select(inlf = age c.age#c.age faminc kidslt6 educ)在这个例子中,结果方程解释工资 wage:
\[ \operatorname{wage}_i =\beta_0+\beta_1\operatorname{educ}_i+\beta_2\operatorname{exper}_i+\beta_3\operatorname{expersq}_i+\beta_4\operatorname{city}_i+u_i \tag{3.7}\]
选择方程解释女性是否进入劳动市场 inlf:
\[ S_i^* =\gamma_0+\gamma_1\operatorname{age}_i+\gamma_2\operatorname{age}_i^2+\gamma_3\operatorname{faminc}_i+\gamma_4\operatorname{kidslt6}_i+\gamma_5\operatorname{educ}_i+v_i \tag{3.8}\]
这里,kidslt6 表示 6 岁以下子女数量,反映家庭照护责任;faminc 表示家庭收入,影响女性是否参加劳动市场;educ 同时进入选择方程和结果方程,因为教育既可能影响劳动参与,也会影响工资。
执行后的核心结果如下:
Heckman selection model Number of obs = 753
(model with sample selection) Selected = 428
Nonselected = 325
Wald chi2(4) = 88.79
Log likelihood = -1474.133 Prob > chi2 = 0.0000
-----------------------------------------------------------------
| Coeff S.E. z P>|z| [95% CI]
-------------+---------------------------------------------------
wage |
educ | 0.671 0.076 8.86 0.000 0.523 0.820
exper | 0.072 0.033 2.17 0.030 0.007 0.137
expersq | -0.001 0.001 -1.02 0.306 -0.003 0.001
city | -0.079 0.195 -0.40 0.686 -0.461 0.304
_cons | -7.517 0.993 -7.57 0.000 -9.464 -5.570
-------------+---------------------------------------------------
inlf |
age | -0.032 0.033 -0.98 0.328 -0.097 0.032
c.age#c.age | 0.000 0.000 0.89 0.374 -0.000 0.001
faminc | -0.000 0.000 -3.19 0.001 -0.000 -0.000
kidslt6 | -0.162 0.049 -3.30 0.001 -0.259 -0.066
educ | 0.161 0.020 8.11 0.000 0.122 0.200
_cons | -0.941 0.749 -1.26 0.209 -2.409 0.528
-------------+---------------------------------------------------
/athrho | 2.766 0.229 12.10 0.000 2.318 3.214
/lnsigma | 1.426 0.040 35.74 0.000 1.347 1.504
-------------+---------------------------------------------------
rho | 0.992 0.004 0.981 0.997
sigma | 4.160 0.166 3.848 4.499
lambda | 4.128 0.171 3.792 4.464
-----------------------------------------------------------------
LR test of indep. eqns. (rho = 0): chi2(1) = 164.38 Prob > chi2 = 0.0000
这个输出至少要读三处。
第一,看 Selected 和 Nonselected。753 个观测中,428 个女性进入劳动市场并有工资数据,325 个没有工资结果。工资不是总体中每个人都可见的变量。
第二,看选择方程。kidslt6 的系数为负,说明 6 岁以下子女数量越多,女性进入劳动市场的概率越低;faminc 的系数也为负,说明家庭收入较高时,女性劳动参与倾向下降;educ 的系数为正,说明教育提高劳动参与概率。
第三,看 rho 和独立性检验。输出中 rho 接近 1,且 rho = 0 的检验被拒绝,说明选择方程和结果方程中的不可观测因素存在显著相关。此时,把选择过程完全忽略掉,直接在就业女性样本中估计工资方程,就可能存在样本选择偏误。
本书另附一个可运行 Notebook,用 nbstata 演示 mroz.dta、OLS、Heckman 极大似然估计、Heckman 两步法和 IMR 生成过程,见 Heckman 实操笔记。
3.5 排他性变量不是装饰
Heckman 模型最容易被误用的地方,是排他性变量。选择方程中最好至少有一个变量影响是否进入样本,但不直接影响结果变量。这个要求类似工具变量中的排除限制,但它服务的是选择方程识别。
在女性工资例子中,可以考虑的选择变量包括:
- 6 岁以下子女数量;
- 年龄及年龄平方;
- 家庭收入;
- 丈夫工资;
- 本地托育资源;
- 通勤成本;
- 家庭照护负担。
但是,这些变量能否作为排他性变量,不能只靠直觉。比如,6 岁以下子女数量可能影响女性是否工作,但它也可能影响工时、职业选择和工作地点;家庭收入可能影响劳动参与,但也可能与社会阶层、居住地和家庭网络相关,进而影响工资。研究者必须解释为什么这些变量主要通过选择过程影响结果,而不是直接进入结果方程。
Heckman 模型不是靠命令自动修正偏误。选择方程和结果方程如何区分,排他性变量为什么有效,都需要制度背景和经济学逻辑支持。解释不清选择机制时,Heckman 只会把问题变得更复杂。
3.6 回到政策评估
第三章的目标不是让读者学会机械运行 heckman 命令,而是建立样本进入机制的意识。这个意识可以直接迁移到政策评估。
3.6.1 科创板
科创板研究中,最终上市企业不是天然处理组。企业要经历申报、受理、问询、注册和发行等环节。能够最终上市的企业,通常已经经过科技属性、成长性、治理结构、中介机构支持和监管审核等筛选。
因此,若直接比较科创板上市企业和其他企业,估计结果可能混合三类因素:
- 注册制改革的政策效应;
- 企业政策前质量和成长性;
- 审核和中介机构筛选。
更稳妥的做法,是根据研究问题区分:
- 潜在符合科创板定位的企业;
- 提交申报材料的企业;
- 被受理企业;
- 通过注册企业;
- 最终上市企业。
不同样本对应不同估计对象,也对应不同选择机制。
3.6.2 政府引导基金
政府引导基金被投企业通常也不是随机企业。基金管理人和政府资金往往倾向选择符合产业方向、成长潜力更高、技术路线更重要或更有地方战略价值的企业。后续追投更可能反映企业已经展示出的阶段性成功。
如果研究者只比较被投企业和未被投企业,很容易把企业本来更强的成长潜力误认为政府引导基金的效果。这个问题在多层级、多轮次投资中会更加严重:
- 中央级基金可能选择国家战略方向;
- 地方基金可能选择本地产业链关键企业;
- 后续追投可能选择表现更好的企业;
- 退出也可能发生在目标达成或绩效改善之后。
因此,政府引导基金研究不仅要定义 Treat,还要定义进入机制:哪些企业有机会被投,谁负责筛选,筛选依据是什么,是否能观察到申请者、候选项目或未中选对象。
3.6.3 政策试点
很多政策试点也存在进入选择。第一批试点城市可能治理能力更强,产业基础更好,问题更突出,或者地方政府更积极。后续扩围又可能吸纳不同类型地区。
这会影响 DID 的可比性。即使后续使用双向固定效应、事件研究、交错 DID 或合成控制法,研究者仍要先解释试点进入机制。否则,处理组和对照组政策前差异可能已经包含在进入机制中。
看到「上市企业」「被投企业」「获批企业」「试点城市」「幸存企业」时,先不要急着估计政策效应。先问:这些对象是怎样进入样本的?未进入样本的对象是否可见?进入机制是否与潜在结果相关?
3.7 Heckman 能解决什么,不能解决什么
Heckman 模型适合处理一类特定问题:结果变量只在被选择样本中可见,且选择过程可以被合理建模。它可以帮助研究者把选择过程显式写出来,并在一定分布假设下校正选择偏误。
但 Heckman 不能自动解决所有内生性问题。
- 如果处理变量本身内生,Heckman 未必适合;
- 如果结果变量在所有样本中都可见,只是处理组自选择,问题可能更接近处理效应识别,而不是经典样本选择;
- 如果没有合理的排他性变量,Heckman 只能依赖函数形式识别,可信度较弱;
- 如果选择过程来自复杂政治经济机制,仅靠选择方程很难充分刻画;
- 如果研究者把第一阶段预测值当作工具变量,或机械加入 IMR 而不解释选择机制,模型可能被误用。
因此,Heckman 应该被理解为一种样本选择模型,而不是万能稳健性检验。
3.8 顶级期刊如何处理样本选择问题
前文已经说明,样本选择问题不是简单的样本量减少,而是进入样本的规则可能与结果方程中的不可观测因素相关。工资只在就业者中可见,贸易量只在发生贸易的国家对中可见,上市公司只是在资本市场筛选后留下来的企业。研究者真正需要说明的是:哪些结果没有被观察到?谁决定了这些结果是否可见?进入样本的机制是否也影响结果变量本身?
顶级期刊中,经典 Heckman 两方程模型已经很少作为唯一主识别策略出现。更常见的写法是先把样本进入机制讲清楚,再根据问题结构选择不同形式的选择校正:有的是传统的 employment selection correction,有的是两阶段贸易流估计,有的是把 Heckman 思路推广到工资分布。下面四篇文献可以帮助读者理解这种写法。
3.8.1 从 Mroz 到现代性别工资差距:Blau et al. (2024)
- Blau, F. D., Kahn, L. M., Boboshko, N., & Comey, M. L. (2024). The impact of selection into the labor force on the gender wage gap. Journal of Labor Economics, 42(4), 1093–1133. Link, PDF, Data, Google.
这篇文章可以看作 Mroz 女性工资案例的现代扩展。Mroz 例子告诉我们,工资只在就业女性中可见;Blau et al. (2024) 进一步追问:1981–2015 年美国性别工资差距的收敛,到底是潜在工资报价真的收敛,还是男女进入就业样本的方式发生了变化?如果女性劳动参与上升主要来自高教育、高潜在工资女性进入市场,观察到的性别工资差距可能被压低;如果低工资男性退出劳动力市场,观察到的男性平均工资也会被抬高。这些变化都会改变工资样本构成。
这篇文章的研究背景是美国性别工资差距长期收敛。作者使用 PSID 数据,并通过纵向信息尽量补齐工资观测:不仅使用常规全职工资样本,也使用兼职、短期就业和相邻年份的工资信息。这样做的原因很清楚:若工资只在较强劳动参与者中可见,直接估计观察工资差距,得到的是就业样本中的工资差距,而不是总体潜在工资报价差距。
用 Heckman 语言表达,潜在工资方程可以写为:
\[ W_{it}^{*}=X_{it}'\beta+u_{it} \]
其中,\(W_{it}^{*}\) 表示个体 \(i\) 在年份 \(t\) 的潜在工资报价,\(X_{it}\) 包括教育、实际工作经验、年龄、种族、家庭结构等变量。工资只有在个体进入工资样本时才能观察到。选择方程可以写为:
\[ D_{it}^{*}=Z_{it}'\gamma+v_{it},\qquad D_{it}=\mathbf{1}\{D_{it}^{*}>0\},\qquad W_{it}=W_{it}^{*}\text{ if }D_{it}=1 \]
其中,\(D_{it}\) 表示是否有可用工资观测。若 \(u_{it}\) 与 \(v_{it}\) 相关,劳动参与选择就会影响工资差距估计。
需要说明的是,Blau et al. (2024) 并不只是机械使用经典 Heckman 两步法。文章比较了结构式选择校正、identification at infinity、bounds 和概率加权等多种方法。作者偏好的方法是 probability weighting,即根据可观察特征预测未观测工资者落入工资分布各分位区间的概率,而不是给每个人机械填入一个工资水平。文章同时讨论经典选择模型中的排他变量问题:以往文献常用婚姻状况、子女数量、二者交互、非劳动收入或家庭成员年龄结构来解释就业参与,但这些变量能否排除在工资方程之外需要谨慎论证。
这篇文章适合放在 Mroz 案例后面。它提醒学生,Heckman 模型的教学价值不在于记住一个命令,而在于理解一个更一般的问题:观察到的工资差距不一定等于潜在工资报价差距。当男女进入劳动市场的规则不同,且这种规则随时间变化时,工资差距的趋势本身也可能受到样本选择影响。
3.8.2 政策冲击改变谁留在样本中:Borjas and Edo (2026)
- Borjas, G. J., & Edo, A. (2026). Gender, selection into employment, and the wage impact of immigration. Journal of Labor Economics, 44(2), 515–552. Link, PDF, NBER, Google.
这篇文章更接近因果推断课堂中的政策冲击问题。移民流入通常被理解为对本地劳动力市场的供给冲击。常规估计会比较移民流入较多地区和较少地区中本地劳动者工资的变化。但作者指出,这种估计有一个容易被忽略的问题:移民冲击不只影响工资,也可能影响本地人是否继续留在就业样本中。如果退出就业的本地人不是随机的,观察到的工资变化就会同时包含工资效应和样本构成变化。
这篇文章以法国劳动力市场为背景。原始相关性显示,移民冲击对本地男性工资有明显负面影响,但对本地女性工资影响接近于零;与此同时,移民冲击显著降低了本地女性就业率。作者的解释是,部分低工资潜力女性在移民冲击后退出就业样本,留下来的女性工资较高,导致观察到的平均工资下降不明显。换言之,直接看就业女性工资,会低估移民冲击对女性潜在工资的负面影响。
这可以写成一个带政策冲击的选择模型。潜在工资方程为:
\[ \ln W_{irt}^{*}=\alpha M_{rt}+X_{irt}'\beta+\delta_{r}+\delta_{t}+u_{irt} \]
其中,\(M_{rt}\) 表示地区 \(r\) 在年份 \(t\) 的移民冲击或移民份额,\(X_{irt}\) 是个人特征,\(\delta_{r}\) 和 \(\delta_{t}\) 表示地区和年份固定效应。问题在于,\(W_{irt}^{*}\) 只在个体就业时被观察到。就业选择方程可写为:
\[ E_{irt}^{*}=Z_{irt}'\gamma+\theta M_{rt}+v_{irt},\qquad E_{irt}=\mathbf{1}\{E_{irt}^{*}>0\} \]
当 \(u_{irt}\) 与 \(v_{irt}\) 相关时,移民冲击对工资的估计会被就业选择污染。作者在工资方程中加入由就业选择方程得到的 inverse Mills ratio,并结合 shift-share 工具变量处理移民份额的内生性。
这篇文章的排他变量和识别结构比 Mroz 例子复杂。基础控制包括年龄-年份、教育-年份、地区-年份固定效应;选择方程中进一步使用家庭特征和家庭财富信息,如婚姻、是否有年幼子女、住房所有权等。作者还通过替代选择方程、线性概率模型生成的选择校正项、以及高就业概率女性子样本等方式检验结论是否依赖某个特定的 Heckman 函数形式。
这篇文章特别适合放在政策评估部分。它说明,政策冲击可能改变 outcome sample 本身。DID、IV 或 shift-share 识别即使处理了冲击变量的外生性,也仍然需要问一个问题:政策之后,谁还留在可观察结果样本中?如果留下来的人已经被筛选过,观察到的平均结果就不再只是政策作用于固定总体的结果。
3.8.3 国际贸易中的零贸易流:Helpman et al. (2008)
- Helpman, E., Melitz, M., & Rubinstein, Y. (2008). Estimating trade flows: Trading partners and trading volumes. The Quarterly Journal of Economics, 123(2), 441–487. Link, PDF, Homepage, Google.
这篇文章虽然早于近十年,但非常适合讲样本选择问题如何跳出劳动经济学。传统引力模型通常只在正贸易流样本中估计双边贸易量,即只使用已经发生贸易的国家对。Helpman et al. (2008) 指出,大量国家对之间的贸易额为零,这些零贸易流不是无关信息,而是反映了企业是否进入出口市场的选择过程。若只看正贸易流,研究者观察到的是经过出口进入筛选后的国家对样本。
文章的理论基础来自异质性企业贸易模型。企业面对固定出口成本和可变贸易成本,只有生产率足够高、能够覆盖目的国进入成本的企业才会出口。某一国家对之间是否有贸易,取决于是否存在企业愿意进入该目的国市场;一旦发生贸易,贸易量又取决于贸易成本、市场规模和进入企业数量。因此,作者把双边贸易分成两个问题:是否成为贸易伙伴,以及成为贸易伙伴以后贸易量是多少。
选择方程可以写为:
\[ T_{ij}=\mathbf{1}\{Z_{ij}'\gamma+v_{ij}>0\} \]
其中,\(T_{ij}\) 表示出口国 \(j\) 是否向进口国 \(i\) 出口,\(Z_{ij}\) 包括距离、共同边界、共同语言、殖民关系、贸易成本和固定进入成本等变量。结果方程只在 \(T_{ij}=1\) 的国家对中观察到:
\[ \ln X_{ij}=X_{ij}'\beta+\eta_{ij}+u_{ij},\qquad \text{observed only if }T_{ij}=1 \]
这里,\(X_{ij}\) 是双边贸易额,\(\eta_{ij}\) 表示与进入出口市场的企业比例有关的 extensive margin。文章的重点不只是 Heckman 意义上的样本选择校正,还包括被遗漏的出口企业数量这一 extensive margin。因此,第二阶段同时使用选择方程生成的校正项和对 extensive margin 的估计。
排他变量是这篇文章最适合教学的地方。作者先在较小样本中使用企业进入监管成本作为排他变量,理由是这些成本影响企业进入出口市场的固定成本,从而影响是否发生贸易,但在控制贸易伙伴选择和其他贸易成本后,不直接影响正贸易流的强度。随后作者构造共同宗教指数,并检验其可作为更大样本中的排他变量。共同宗教影响贸易关系建立和进入成本,但在其设定中不直接进入贸易量方程。
这篇文章可以帮助学生看到,样本选择的核心不是「人是否工作」这一种形式。只要结果变量只在某个进入状态下可见,就会产生类似结构。国家对之间没有贸易时,贸易量不是简单缺失,而是经济机制决定的零值。传统只看正贸易流的回归,等价于只在被选择样本中估计结果方程。
3.8.4 从均值校正到分布校正:Chernozhukov et al. (2025)
- Chernozhukov, V., Fernández-Val, I., & Luo, S. (2025). Distribution regression with sample selection and UK wage decomposition. Journal of Political Economy, 133(12), 3952–3992. Link, PDF, Replication Package, Data, Google.
经典 Heckman 模型主要处理条件均值:在控制选择以后,解释变量如何影响平均工资或平均结果。Chernozhukov et al. (2025) 代表了另一个方向:研究者不仅关心平均工资差距,也关心整个工资分布上的差距。比如,女性在工资分布低端、中位数和高端的选择机制可能不同;如果只校正均值,就会遗漏 sticky floor 和 glass ceiling 等分布差异。
这篇文章提出带样本选择的 distribution regression model,并明确把它定位为 Heckman selection model 的半参数推广。应用背景仍是工资选择问题:潜在工资 \(Y^{*}\) 只在个体就业时被观察到,选择变量 \(D\) 表示是否就业,\(D=1\) 时才观察到 \(Y=Y^{*}\)。但与传统 Heckman 不同,文章不只估计一个工资方程,而是在不同阈值 \(y\) 上估计潜在工资分布。
其核心模型可写为:
\[ F_{Y^{*},D^{*}}(y,0\mid Z=z)=\Phi_2(-x'\beta(y),-z'\pi;\rho(x'\delta(y))) \]
其中,\(Y^{*}\) 是潜在工资,\(D^{*}\) 是就业选择的潜在变量,\(D=\mathbf{1}\{D^{*}>0\}\)。\(-x'\beta(y)\) 是 outcome equation,\(-z'\pi\) 是 selection equation,\(\rho(x'\delta(y))\) 是 selection sorting equation。与经典 Heckman 中一个常数相关系数不同,这里允许选择相关性随工资分布位置变化。
排他变量来自 out-of-work income,即不工作时可获得的收入或福利相关指标。这类变量影响就业选择,因为它改变了工作相对于不工作的机会成本;但在作者设定中,控制劳动市场特征后,它不直接影响潜在工资分布。文章将英国 FES、EFS 和 LCFS 数据与 TAXBEN 模拟出的 out-of-work income 相结合,分解男女工资分布差异为 composition effect、wage structure effect、selection structure effect 和 selection sorting effect。
这篇文章不适合作为第一篇 Heckman 入门案例,因为模型较技术化。但它适合放在本节末尾,告诉学生:Heckman 的基本思想仍然是「选择方程 + 结果方程 + 排他变量」,但现代文献已经把它扩展到结果分布。很多时候,样本选择不只是改变平均值,还会改变我们对不平等、分位数差距和分布排序的判断。
3.8.5 顶刊写法的共同逻辑
这四篇文献的共同点不是都使用同一个命令,而是都清楚回答了三个问题。
- 谁没有被观察到?
- 为什么没有被观察到不是随机的?
- 选择过程如何与结果方程区分开来?
Blau et al. (2024) 和 Borjas and Edo (2026) 讨论的是就业者工资样本;Helpman et al. (2008) 讨论的是发生贸易的国家对样本;Chernozhukov et al. (2025) 讨论的是工资分布中被就业选择遮蔽的潜在工资。它们都说明,样本选择偏误的核心不是缺失观测本身,而是缺失机制与潜在结果相关。
这也解释了为什么排他性变量不能作为装饰。婚姻、子女、家庭财富、进入监管成本、共同宗教、out-of-work income 等变量,只有在制度背景和经济行为上能够解释「进入样本」,同时又不直接决定「进入样本后的结果」,才有识别意义。若排他变量只是为了让软件能够运行,Heckman 模型就很难增加可信度。
因此,读顶刊中的选择模型时,不必先问作者用了哪个命令,而应先问作者是否把样本进入机制说清楚。真正可借鉴的写法,是从制度和行为机制出发,把选择方程、结果方程和排他变量连成一个完整的识别叙述。
3.9 扩展阅读
下面这些推文可以帮助读者进一步学习样本选择、Heckman 及相关扩展模型。
- 孙晓艺, 2026, 样本选择偏差:为什么按结果变量筛选样本会让 OLS 有偏?
- 张少鹏, 2021, Stata:样本选择偏误与两部模型-twopm-L121
- 徐云娇, 2021, arhomme:分位数回归中的样本选择问题-T202
- 李琼琼, 2021, Stata:自选择偏误之双栏模型简介-(Double-hurdle-model)
- 牛坤在, 2021, xtheckmanfe:面板Heckman模型的固定效应估计
- 甘梓萦, 2026, 包含样本选择的双重差分法:DID with Sample Selection
- 秦利宾, 2020, Heckman 模型:你用对了吗?
- 章青慈, 2022, Stata:广义Heckman两步法-gtsheckman
3.10 从本章走向下一章
第三章讨论谁进入样本,谁被我们观察到。第四章将讨论另一个问题:即使样本已经确定,处理组和对照组之间仍然可能存在不可观测差异。
这两个问题经常混在一起,但并不相同。样本选择关注的是进入观察样本的机制;遗漏变量和固定效应关注的是在给定样本中,比较对象是否还存在系统性差异。前者回答「谁被看见」,后者回答「看见以后能否比较」。
政策评估需要同时处理这两个问题。只有先说明样本进入机制,再说明处理组和对照组的可比性,后续的 DID、DDD、合成控制或 DDML 才有清楚的识别基础。