2024年3月15日发(作者:)
//***************************************************************
//*******************************0、导入Excel数据
//******************************************************************
clear
import excel using C:, firstrow clear
//下面这个代码很重要,下面这个代码告诉Stata你的数据是面板数据
tsset code time
// unbalanced 表示非平衡面板
xtdes
//--看看结构---------------
//***************************************************************
//*******************************1、简单混合,和聚类标准差混合
//*********************Y因变量 X自变量 C控制变量 ry行业控制变量
reg Y X C1 C2 C3 C4 ry
est store PT
//*******************************简单混合回归,使用普通标准差 ①
reg Y X C1 C2 C3 C4 ry ,vce(cluster code)
est store PTse
//******************混合回归标准差调整,聚类,vce(cluster code)表示使用聚类稳
健标准差
// cluster后面是聚类的类别,它估计的se要大很多
estimates table PT PTse
// PT和PTse回归系数放在一起对比一下,
// 即使系数差别不大,t/p 值还是有差别的
//******************************************************************
//*****************************2、固定效应和混合回归选哪个**********
//********************************此处就讨论固定个体与否************
//***************************
xi:xtreg Y X C1 C2 C3 C4 ry , fe
// xtreg 已经知道为面板数据,所以r和vce(cluster code)效果一样
//* 看回归上面行的F检验的P值,原假设H0:all ui=0
// P值=0.0000,故强烈拒绝原假设,FE明显优于混合回归,不采用混合回归
// 应该允许每家公司拥有自己的截距项
// 但由于未使用聚类稳健的标准差,故这个F检验可能并不有效
// 下面采用LSDV法来判断
xi:xtreg Y X C1 C2 C3 C4 ry , fe r
est store LSDV
//***就跑上面的代码,看每一家公司虚拟变量的p值是否显著,显著的话
//***就拒绝所有个体虚拟变量都是0的假设,即存在个体效应,不应该使用混合回归
//******************************************************************
//*****************************3、固定效应要固定时间吗**************
//******************************************************************
tab time,gen(time)
xi:xtreg Y X C1 C2 C3 C4 time2-time9 ry, fe r
// time1被作为基期,对应常数项,我的数据只有9年所以只到time9就好
// time虚拟变量的p值看,有的显著有的不显著
test time2 time3 time4 time5 time6 time7 time8 time9
// 检验所有年度虚拟变量的联合显著性
// 我的F检验的P=0.0002,强烈拒绝H0:无时间效应,
// 应该在模型中包括时间效应,即ry后面加一个
// 加一个,是把时间作为虚拟变量包括进回归模型,实现固定时间效应
xi:xtreg Y X C1 C2 C3 C4 , fe r
// 上面两行代码跑了一个双固定效应
// fe 是固定code(这里指上市公司代码)个体效应, fe 是时间个体双固定效
应
// *********************************使用时注意
//**********************************进行固定效应的两种办法
// --fe去中心化加入进行处理",---i.是生成虚拟变量,然后变成控制变量的处理办
法
// 所以 ry 不加fe就可以固定行业和时间
// 如果固定了fe,没必要再固定行业,不用ry
// 固定了fe,再使用ry的话,行业如果不是面板数据,没有随时间变动的话
//--------这样industry就会被omitted,不能fe和ry共存
//--------要么y ;要么 fe 达到双固定效应
//--------我的行业数据是随时间变动的面板数据,所以可以ry fe共存
//******************************************************************
//*****************************4、混合回归还是随机效应**************
//******************************************************************
xi:xtreg Y X C1 C2 C3 C4 ry ,re r
est store re
xttest0
// xttest0命令的结果P值=0.0000
// 即:LM检验拒绝不存在个体随机效应的原假设,
// 即混合回归与随机效应之间,应该选择随机效应
//******************************************************************
//*****************************5、随机效应还是固定效应?**************
//******************************************************************
// 使用前注意,使用Hausman检验时,两个回归都不能进行方差聚类,
//****************************************************即不要有r、vce()等出现
xi:xtreg Y X C1 C2 C3 C4 ry ,fe
est store FE
// fe跑的
xi:xtreg Y X C1 C2 C3 C4 ry ,re
est store RE
// re 跑的
hausman FE RE
// 检验哪个好,原假设是 re 更好
// 我的P值为0.0000,拒绝原假设,应该采用固定效应回归
//******但这个检验没有考虑聚类标准差
//聚类标准差和普通标准差相差较大时,hausman检验可能会不可靠
// 我的聚类标准差和普通标准差相差较大,即回归系数的se差别比较大
// 则应该使用下面的方法检验随机效应好还是固定效应好
//
quietly xi:xtreg Y X C1 C2 C3 C4 ,re theta
global yandxforhausman Y X C1 C2 C3 C4
sort code
foreach x of varlist $yandxforhausman {
by code:egen mean`x'= mean(`x')
gen md`x'=`x' - mean`x'
gen red`x'=`x' - theta*mean`x'
}
quietly xi:xtreg redY redX redC1 redC2 redC3 redC4 /*
*/mdX mdC1 mdC2 mdC3 mdC4 ,vce(cluster code)
Test mdX mdC1 mdC2 mdC3 mdC4
发布者:admin,转转请注明出处:http://www.yc00.com/web/1710453876a1759497.html
评论列表(0条)