Stata如何提取SUR估计指定方程参数以执行豪斯曼检验
Stata对比SUR与单方程估计参数显著性差异的实现方法
核心逻辑说明
Stata中sureg估计的多方程结果,每个方程的参数都会自动带上所属方程的名称前缀,直接调用hausman时可以通过equations选项指定要对比的方程对应关系,无需手动截取参数。
具体操作步骤
- 步骤1:估计SUR模型并存储全系统估计结果
- 步骤2:估计单方程GLM/OLS模型并存储结果
- 步骤3:使用
hausman命令搭配equations选项执行参数差异检验
对应演示案例的可运行代码
* 加载示例数据 sysuse auto, clear * 估计SUR系统,存储全系统结果 sureg (price mpg headroom) (trunk weight length) (gear_ratio turn headroom) estimates store sur_res * 估计单方程GLM,存储结果 glm price mpg headroom estimates store glm_res * 豪斯曼检验:对比SUR第1个方程(price方程)与GLM的参数 * equations(A:B)表示用第一个存储结果的第A个方程,匹配第二个存储结果的第B个方程 hausman sur_res glm_res, equations(1:1)
如果你要对比11个SUR方程中的第k个方程,将equations选项的第一个数值改为k即可。
可选:单独提取SUR指定方程的估计结果存储
如果你需要单独保存SUR某一个方程的估计结果用于后续分析,可使用如下代码:
* 恢复SUR的全系统估计结果 estimates restore sur_res * 提取第1个方程(price)的系数矩阵与方差协方差矩阵 matrix b_sur1 = e(b)[1, "price:"] matrix V_sur1 = e(V)["price:", "price:"] * 重新封装为单方程估计结果并存储 ereturn post b_sur1 V_sur1, esample(e(sample)) depname(price) estimates store sur_price_only
检验结果解读
豪斯曼检验的原假设为两组参数不存在系统性差异:
- 若检验p值大于你设定的显著性水平(通常为0.05或0.1),则无法拒绝原假设,说明SUR与单方程估计的参数没有统计上的显著差异,SUR的系统设定合理且估计效率更高
- 若检验p值小于显著性水平,则拒绝原假设,说明SUR的系统设定可能存在偏误,优先选择单方程估计结果
内容的提问来源于stack exchange,提问作者omzeybek
相关产品推荐
相关产品推荐

