Stata:聚类标准误代码介绍

阅读全文:Stata:聚类标准误代码介绍 (lianxh.cn)

作者:谢泽荟 (中山大学)
邮箱xiezh39@mail2.sysu.edu.cn

编者按:本文部分内容参考自下文,特此致谢!
Source:Abadie A, Athey S, Imbens G W, et al. When should you adjust standard errors for clustering?[J]. The Quarterly Journal of Economics, 2023, 138(1): 1-35. PDF


1. 引言

标准误在统计推断中发挥着至关重要的作用,直接影响着系数的显著性和置信区间,并最终影响到假设检验的结论。因此,正确地估计标准误在实证分析的过程中显得尤为重要。

当干扰项满足独立同分布 (iid) 条件时, OLS 所估计的标准误是无偏的。但是当误差项之间存在相关性时,OLS 所估计的标准误是有偏的,不能很好地反映估计系数的真实变异性 (Petersen, 2009),故需要对标准误进行调整。在多种调整标准误的方式中,聚类调整标准误 (cluster) 是一种有效的方法 (Petersen, 2009)。

本文主要对是否聚类和聚类到什么层面这两个问题进行简要讨论,并对 Stata 中聚类调整标准误的实操代码进行汇总。

2. 是否聚类?聚类到什么层面?

聚类调整标准误的基本思想是放宽了随机误差项独立同分布的假定,允许组内个体的干扰项之间存在相关性,但不同组个体的干扰项之间彼此不相关。

尽管聚类后的标准误往往与聚类前存在较大差异,从而影响统计推断,但并非所有情况都需要聚类调整标准误。如果从大量人口中随机抽取单位样本,并且是否接受处理 (treatment) 在单位水平上是随机分配的,则不需要对最小二乘估计量的标准误进行聚类。即使结果变量存在组内相关性,聚类也不合适。在这种情况下,聚类可能会导致标准误过于保守 (增大),置信区间过宽。

当处理 (treatment) 的分配机制或抽样过程存在聚类性,则需要在该层面对标准误进行聚类。例如,某一政策的实施与否在地级市层面的决策,且抽样过程也是以地级市为单位 (尽管研究的个体单位可能是地级市中的企业),那么标准误就应该聚类到地级市层面。

针对面板数据的固定效应模型,聚类层面与固定效应模型并没有对应关系。一般而言聚类层级越高,对于相关性矩阵所施加的参数假设越少,结果越稳健。因此,如果本身控制了个体固定效应或者双向固定效应,为了结果更稳健,应该聚类到更高层面,例如村庄或县级。

3. Stata 代码汇总

3.1 一维聚类标准误

对标准误进行一维聚类调整:

* 截面数据,在公司层面进行聚类,以下两种写法等价
reg y x, cluster(id) 
reg y x, vce(cluster id)  
  
* 面板数据,在公司层面进行聚类,以下三种写法等价
xtset id year
xtreg y x, fe cluster(id)  
xtreg y x, fe vce(cluster id)
xtreg y x, fe robust

3.2 二维聚类标准误

对标准误进行二维聚类调整,有以下几种方式:

lxhuse nlswork, clear

* cluster2 (Petersen-2009, RFS)
// 该命令没有帮助文件,所有功能都可以用 cgmreg 和 vce2way 代替
// 因此,建议日后不必使用该命令 
cluster2 ln_wage $x, fcluster(idcode) tcluster(year) 

* cgmreg (CGM2011, Mitchell Petersen's -cluster2.ado- 的升级版)
// 需手动下载:https://sites.google.com/site/judsoncaskey/data
// help cgmreg  
cgmreg ln_wage $x, cluster(idcode year)	
est store m4

* vce2way (CGM2011, 支持 Panel data, xtreg 等命令)
// ssc install vce2way
// help vce2way
vce2way reg ln_wage $x, cluster(idcode year)	
est store m5
  
* vcemway (Gu and Yoo-2019, 该命令在 vce2way 的基础上扩展到多维)
// ssc install vcemway
// help vcemway
vcemway reg ln_wage $x, cluster(idcode year)	
est store m6

* 结果对比
local m  "m1 m2 m3 m4 m5 m6"
local mt "OLS Robust 1Clus 2_cgmreg 2_vce2way 2_vcemway"
esttab `m', mtitle(`mt') nogap b(%4.3f) se(%6.4f) brackets ///
    star(* 0.1 ** 0.05 *** 0.01) s(N r2) compress

 阅读全文:Stata:聚类标准误代码介绍 (lianxh.cn) 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值