Stata

您所在的位置:网站首页 回归显著性怎么看stata Stata

Stata

2024-07-15 11:48| 来源: 网络整理| 查看: 265

这篇博客介绍的是在两个样本组的模型设定是一样的情形下,进行分组回归后,比较相同变量中二者在系数大小上是否显著差异。如果系数差异显著,则说明二者在经济意义上显著差异。

因为我们常常使用的数据是面板数据,并且,我们常常由于控制很多固定效应,导致在进行系数差异性检验碰壁,所以本篇博客是在基于公司面板数据为例,假设探讨薪酬激励(x)是否有助于提升企业业绩(y),并控制企业特征变量($z),添加了年份(year)、行业(ind)、公司(firm)固定效应,并在公司层面聚类。

主回归模型如下:

reghdfe y x $z, absorb(year ind firm) vce(cluster firm)

分组回归是探讨国有企业(state1)和非国有企业(state0)在薪酬激励(x)对企业业绩(y)回归系数是否有显著差异。

本文主要介绍如下几种方法: I. 加入交乘项 II.基于 SUR 模型的检验 III.组合检验 IV.自己编写程序 V.手动计算

本文主要分享过程,不具体展开原理,具体参考如下资料 1、Stata: 如何检验分组回归后的组间系数差异? 2、同一个模型三组不同样本下,回归系数间的差异性检验 3、Stata:自己动手做组间系数差异检验-bootstrap-bdiff

这里写目录标题 I.加入交乘项II.基于 SUR 模型的检验III.组合检验IV.自己编写程序V.手动计算

I.加入交乘项 *-I.加入交乘项 //最严格的系数差异性检验:假设其他控制变量在两组之间的不存在系数差异 **生成交乘项变量 xtset stkcd year gen x_state = x*state **加入产权性质(state)和交乘项(x_state)进行回归 reghdfe y x state x_state $z, absorb(year ind firm) vce(cluster firm) II.基于 SUR 模型的检验 *-II.基于 SUR 模型的检验 //假设条件也比较宽松:回归时要保持二者回归变量一致,且固定效应多的时候需要去中心化(运行速度的考虑) **固定效应处理 xtset stkcd year tab year,gen(y_) // 年度固定效应 tab ind,gen(i_) // 行业固定效应 foreach var of varlist y x $z i_* y_* { egen double `var'_0 = mean(`var'), by(firm) replace `var' = `var'-`var'_0 drop `var'_0 } // 企业固定效应太多维,所以在企业层面进行去中心化来控制企业固定效应,加快运行速度 **分组回归并进行差异性检验 reg y x $z i_* y_* if state==1 est store SOE reg y x $z i_* y_* if state==0 est store NonSOE suest SOE NonSOE, vce (cluster firm) test [SOE_mean]x=[NonSOE_mean]x III.组合检验 *-III.组合检验 //条件最为宽松:原始样本是从母体中随机抽取的,适用于各种命令(reg、xtreg、logit、ivregress) **-方式I **固定效应处理 xtset stkcd year tab year,gen(y_) // 年度固定效应 tab ind,gen(i_) // 行业固定效应 foreach var of varlist y x $z i_* y_* { egen double `var'_0 = mean(`var'), by(firm) replace `var' = `var'-`var'_0 drop `var'_0 } // 企业固定效应太多维,所以在企业层面进行去中心化来控制企业固定效应,加快运行速度 **分组回归并进行差异性检验 bdiff, group(state) model(xtreg y x $z i_* y_*, cluster(firm)) reps(1000) seed(10101) first detail **-方式II xtset stkcd year bdiff, group(state) model(reghdfe y x $z, absorb(year ind firm) vce(cluster firm)) reps(1000) seed(10101) first detail IV.自己编写程序 *-IV.自己编写程序 //基于bdiff的原理,进行撰写,可以灵活运用自己回归的方式 **编写程序 capture program drop bse program bse, eclass xtset stkcd year **-分组回归 reghdfe y x $z if state==1, absorb(year indid firm) vce(cluster firm) scalar b1= _b[x] reghdfe y x $z if state==0, absorb(year indid firm) vce(cluster firm) scalar b2= _b[x] **-计算组间系数差异 scalar diff= b1- b2 **-将组间系数差存储在矩阵中,设置列名方便调取 matrix b = diff matrix colnames b = diff **-将组间系数差矩阵返回 e() 中 ereturn post b ereturn display end **运行程序进行检验 bse // 运行程序 bootstrap _b[diff], reps(500) seed(1234) saving(diff,replace) nowarn : bse // 循环500次抽样 use diff,clear count if _bs_1>0 local num = r(N) local p = `num'/_N if `p'>0.5 { local p = 1-`p' } dis "y:`p'" // 不对diff的分布进行预先假设来检验“H0:diff=0” V.手动计算 *-V.手动计算 **分组回归 xtset stkcd year reghdfe y x $z if state==1, absorb(year indid firm) vce(cluster firm) est store SOE reghdfe y x $z if state==0, absorb(year indid firm) vce(cluster firm) est store NonSOE **计算Z统计量 Z = (β1 = β2)/(Var(β1)+Var(β2))1/2 // (这里的1/2是指对(Var(β1)+Var(β2))开根号的意思!!!) //其中β1 和 β2 是系数大小, Var(β1) 和Var(β2) 分别是两者的方差,更准确的写法是标准差(回归后系数的标准误)的平方,平方不好打出来,就用方差。 // 求出Z值后查Z统计量分布表,几个常用的临界值是Z=1.65对应p


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3