【Stata 18新功能】实证研究中常用的面板模型

您所在的位置:网站首页 xthreg命令保存在哪里 【Stata 18新功能】实证研究中常用的面板模型

【Stata 18新功能】实证研究中常用的面板模型

2024-07-09 15:50| 来源: 网络整理| 查看: 265

本文将对实证研究中常用面板模型的适用范围,相应的Stata操作以及一些相关问题进行总结归纳。涉及到的面板模型包括:动态面板模型、面板门槛模型、面板二值模型、面板向量自回归等(日后不断更新补充)。需要指出的是,本文不会对实证方法的原理进行详细介绍,具体内容可以参考陈强教授的《高级计量经济学及Stata应用》或者直接参考原始文献。

一、动态面板模型

动态面板模型是实证研究中使用的最普遍的模型,动态面板模型的基本形式为:

动态面板模型可以使用系统GMM方法进行估计。需要指出的是,系统GMM中使用的工具变量有两种类型,一种是GMM型工具变量,另一种是普通工具变量。在Stata中可以使用xtabond2命令估计动态面板模型。该命令可以通过下面的语句进行安装。

ssc install xtabond2

下面我们以蒋海等的论文“利率市场化进程中商业银行的资本缓冲行为”(中国工业经济,2018年11期)为例介绍动态面板模型(文章与数据链接为http://ciejournal.ajcass.org/Magazine/show/?id=54913)。

论文中估计的模型如下图所示:

相应的Stata命令为:

xtset id nfxtabond2 buf L.buf gdp lir roe she loan npl lnta, gmm(buf,lag(2 4)) iv(gdp lir roe she loan npl lnta) twostep robust

其中gmm()表示GMM类型的工具变量列表,一般使用被解释变量的若干滞后项作为GMM类型的工具变量;iv()表示IV类型的工具变量列表。动态面板模型的相关检验包括AR(2)检验和Sargan检验,相应的结果如下图所示:

在本例中,AR(2)检验和Sargan检验都显示均无法拒绝原假设。模型的估计结果是可靠的。

二、面板门槛模型

面板门槛模型可以描述解释变量与被解释变量之间的非线性转换特征,具体形式为:

在Stata中可以使用xthreg命令估计面板门槛模型。该命令的安装可以按照以下步骤进行:首先“findit xthreg”会弹出一个新的窗口(如图所示);然后点击st0373会出现新窗口;在新出现的窗口点击安装即可。

下面我们仍然以蒋海等的论文介绍该命令的使用,论文中估计的模型如下图所示。

相应的Stata命令为:

xthreg buf roe she loan,rx(gdp) qx(lir) thnum(1) grid(400) trim(0.3) bs(1000) thlevel(0.95)

xthreg命令中的“buf roe she loan”表示被解释变量后面跟着相关控制变量;rx()表示区制变量,也就是论文中的GDP;qx()表示门槛变量,也就是论文中的lir;thnum()表示门槛数量,thnum(1)表示单一门槛,也就是论文的情况;trim()表示门槛值的截断比例,trim(0.3)表示在门槛变量的30%~70%分位数内进行搜索;grid()表示将门槛值的搜索空间划分为一定数量的格点,trim(0.3) grid(400)表示将门槛变量30%~70%的分位数划分为400个格点;bs()表示门槛效应检验中的bootstrap次数;thlevel表示门槛估计值的置信区间。

门槛效应检验以及门槛值的估计结果如下图所示,可以看出在10%的显著性水平下,模型通过了单一门槛效应检验,可以认为存在单一门槛。

值得注意的是,很多时候使用xthreg命令估计模型时,会报“3200 conformability error”的错误,这通常是trim()设置的区间不合理造成的。为了解决该问题,可以从trim(0.1)开始逐渐增加括号内的数值,直到不再报错。其余部分的回归结果如下图所示。“_cat#c.gdp”表示区制变量的回归系数,其中当门槛变量小于门槛值时回归系数为0.0755,大于等于门槛值时回归系数为0.146。

对于动态门槛面板模型,在Stata中可以使用xtendothresdpd命令进行估计,该命令的安装与xthreg命令相似,这里就不再重复了。我们在前面的面板门槛模型中加入buf的一阶滞后项,并且增加一些控制变量,相应的Stata命令为:

xtendothresdpd buf L.buf lnta she roe loan npl, thresv(lir) pivar(gdp) stub(enr) dgmmiv(buf) twostep vce(robust)

其中thresv()表示门槛变量,也就是

;pivar()表示区制变量,也就是

;stub()表示估计模型中新产生的变量名称;dgmmiv()表示GMM型工具变量列表(一般是被解释变量或者内生解释变量);iv()表示普通型工具变量列表(本例中没有使用)。模型的估计结果如下图所示:

“below_thres_enr”表示门槛变量小于门槛值时(lir=0.7457),区制变量的回归系数。

三、面板二值模型

为了研究居民、企业的微观选择行为,需要建立面板二值选择模型。在Stata中可以通过xtlogit命令建立面板logit模型。下面我们以union数据集展示该命令的应用,首先加载数据,该数据集共有4434个个体,12个时期。固定效应面板logit模型的命令为:

xtlogit union age grade not_smsa south i.year,fe

需要注意的是,固定效应模型需要每个个体的解释变量不完全相同,如果存在完全相同的个体,则xtlogit自动忽略,因此在固定效应模型中只有1690个个体参与回归。此外,面板模型也无法包括时间不变变量(数据集中的black),最终得到的估计结果如下图所示:

随机效应模型则无此限制。相应的Stata命令为:

xtlogit union age grade not_smsa south i.year,re

在实证研究中很多情况下,需要估计动态面板二值模型。相对于静态模型,由于存在种种问题,无法直接进行条件最大似然估计(仅在某些特殊情况下可以),从而限制了此类模型在实证研究领域中的应用。Bartolucci和Nigro(2010)提出了二次指数模型(Quadratic exponential models)对动态面板logit进行近似,从而使其估计变得可行。此时需要安装外部命令cquad。cquad命令是在Bartolucci和Pigini(2017)给出的用于估计动态面板logit模型的R语言包基础上开发的Stata版本。

ssc install cquad

估计动态面板logit模型的命令为:

xi:cquadbasic union idcode age grade not_smsa south i.year

估计结果为:

四、面板VAR模型

面板VAR模型的基本形式为:

其中

维内生变量向量,

分别为面板个体固定效应和个体随机误差项。 

维系数矩阵。

面板VAR模型需要使用GMM估计,虽然对VAR模型中的各方程逐一进行GMM估计可以得到一致估计量,但是进行系统估计可以更有效率,相关内容可参考Estimation of Panel Vector Autoregression in Stata (sagepub.com)。在Stata中可以通过pvar命令估计面板VAR模型。该命令的安装可以按照“findit pvar”的方式进行,这里就不再详细介绍了。下面我们仍然以蒋海等的论文为例介绍pvar命令。我们以buf、npl、roe三个变量作为内生变量建立面板VAR模型。首先对这个三个变量进行面板单位根检验。

xtunitroot ips roe,demean lags(aic 3)xtunitroot ips buf,demean lags(aic 3)xtunitroot ips npl,demean lags(aic 3)

结果显示,buf、npl、roe三个变量均为平稳过程(p-value均小于0.05),因此可以建立面板VAR模型。下面的语句建立了滞后期为2的VAR模型,得到的结果如图所示(只展示了buf方程的估计结果)。

pvar buf roe npl,lags(2)

VAR模型最关键的是进行脉冲响应分析,在估计模型后,可以利用下面的命令进行脉冲响应分析。“orif”表示正交化的脉冲响应;“step()”是脉冲响应分析的期数;“byoption()”是关于绘图的一些选项,“byoption(yrescale)”表示输出的脉冲响应图的y轴尺度不同;“mc()”表示为了计算脉冲响应函数置信区间的蒙特卡洛模拟次数;“porder()”表示cholesky正交化的顺序。

pvarirf, oirf step(12) mc(200) byoption(yrescale) porder(roe npl buf)

最终得到的结果如图所示:

除脉冲响应分析外,还可以利用方差分解考察各个冲击对内生变量方差的贡献,相应的命令为:

pvarfevd, mc(200) porder(roe npl buf)



【本文地址】


今日新闻


推荐新闻


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