赞
踩
我们经常会往模型中加入一系列虚拟变量作为控制变量以达到控制某些特征的目的,这些虚拟变量就叫做固定效应。比如加行业固定效应、年份固定效应、地区固定效应,实则都是加入一连串的行业/年份/地区虚拟变量作为控制变量,以达到对行业/年份/地区特征的控制。
对于一般的双向固定效应模型,估计方法仍然是普通最小二乘法,基本形式是:
其中Xit是我们关注的核心解释变量或处理变量,Zit是一组控制变量。ui和vt是个体效应和时期效应,二者分别用于控制个体层面不可观测的非时变的因素和同一年份不随个体变化的因素。
将个体固定效应控制至所研究的最低层面,就构成我们常说的个体固定效应模型。(因为在本领域以公司研究为主,因此通常就以个体固定效应代指公司个体固定效应) 控制个体固定效应有两种理解方法:
组内离差;
类比行业固定效应,在模型中加入公司个体固定效应以控制个体异质性。因此,控制个体固定效应的前提,数据必须是面板数据。否则加入公司特征虚拟变量后,每个公司维度只有一个观测值,是无法进行模型估计的。
因为公司研究经常使用公司的年度数据,因此在个体固定效应模型的基础上,我们会加入年份固定效应来控制时间变化趋势,就是常说的双向固定效应模型。
只要我们把SEX给控制住了,那么样本之间的比较就缩小到同性别的观测值维度上,此时可以近似认为Y的不同是由于X引起的,而不是SEX的干扰
理论上而言,只要我们控制的变量足够多,就不会有此类问题。
因为把所有可能共同遗漏的变量全部控制起来,就能保证样本中除了X、Y不一样之外,其余特征均相同(此时可以称之为自然实验)。
但事实上,我们无法控制不可观测变量,再者我们也无法穷尽控制变量。遗漏变量将很可能产生内生性问题。 此时我们可以
加入个体固定效应,一股脑的直接把不随时间变化的公司个体异质性完全控制住
数据中需要有足够的信息,估计才能有效,因此数据要有变化,即计量经济学中所提到的变异性。与上个问题相类似,假使我有面板数据了,但是同一个个体在年度之间的变化并不明显,甚至可能几乎没有差别(组内变异性很小);反而是公司和公司之间的差别更大(组件变异性强),此时,如果加入个体固定效应,估计的其实是组内变异性很小(信息量也就少)。此时,需要根据自己的研究问题和数据情况做出取舍
对于这个问题,通常需要进行豪斯曼检验,或者F检验,来确定使用随机效应模型(RE)、固定效应模型(FE)抑或不控制个体固定效应(POLS)。但实际操作中,这些检验都是不报告的,最简单的方法就是不管三七二十一,直接上固定效应模型(FE),因为FE总是有效的;
那为什么大多数文献通常用的是混合OLS(POLS),仅控制到行业层面呢?很可能是控制到个体层面结果不好,仅此而已;
而随机效应模型(RE)则在公司研究领域较少出现,一般不用。
因为我们常用的都是公司年度数据,因此以双向固定效应模型为例:
注意,若有i个个体,则要添加i-1个代表个体效应的0-1变量,否则会有多重共线性(已知任意i-1个个体,剩下的都能预测出)。那被去掉的第i个个体的个体效应如何体现呢?就通过β0来体现,实际上,对于每一个个体,都有唯一的截距项体现其个体效应。
对于时间效应,如果样本是以天为单位的股票数据,day的范围跨越了365天,用LSDV就会生成364个虚拟变量,导致结果十分冗长,此时可以用固定效应模型(4.2)来解决这一问题。
* LSDV法
reg y x controls i.stkcd i.year, cluster(stkcd) // 以”i.“形式加入一系列虚拟变量,但是不生成这些虚拟变量。模型存在双因素效应
reg y x controls i.stkcd, cluster(stkcd) // 模型存在个体效应
reg y x controls i.year, cluster(stkcd) // 模型存在时间效应
xi: reg y x controls i.stkcd i.year, cluster(stkcd) // 加入xi,就是在加入虚拟变量的基础上还会创建这些虚拟变量,个人一般不用。
* 组内估计法
xtset stkcd year // 需要先设定面板数据
xtreg y x controls i.year, fe robust // fe代表固定效应模型
* 其他方法
areg、reghdfe等,后续比较其特点
因为数据往往存在异方差、自相关等问题,导致估计的标准误不准确,所以我们会使用稳健标准误来替代原始标准误。如代码中使用的**robust(异方差稳健标准误) 和 cluster(聚类文件标准误)**代表的是采用稳健标准误的不同形式。其中reg+cluster(stkcd) 等价于 xtreg,fe + robust,是目前论文中常用的比较稳健的标准误了,同样,也是比较难显著。稳健和显著很难两全。后面会介绍我对这些robust、cluster、vce(cluster)等option的理解;
通过上述分析得知,没有生成虚拟变量的个体(如个体1)的个体效应,通过常数项(结果中的_cons)体现
思路:减去组内平均值,消除个体效应
①是自变量的平均值,求法同因变量
②是每个个体效应的平均值,由于ui不随时间变化,因此平均值就为ui
③是其他效应的平均值,求法同因变量
注意,对每一个个体平均来说,得到的v拔都等于时间效应的平均值,即(v1+v2+……+vT)/T
注意,对每一个时间平均来说,得到的u拔都等于时间效应的平均值,即(u1+u2+……+uT)/N
* 法1 xtreg
xtset stkcd year // 需要先设定面板数据
xtreg y x controls, fe robust // 单因素个体效应模型
xtreg y x controls, fe i(year) robust // 单因素时间效应模型
xtreg y x controls i.year, fe robust // xtreg不能单独进行双因素模型回归,只能和之前的LSDV方法结合
* 法2 reghdfe
reghdfe y x controls, absorb(stock, year)
三种命令自变量结果t值和系数都是一样的.
区别就在于结果报告的冗长程度。其中,reg最为朴实无华,会全部报告
xtreg invest mvalue kstock i.province i.year, fe
当固定效应存在时用固定效应模型
那么怎么判断固定效应存在→F检验
在固定效应模型结果的最下方,有F值的大小和P值,如P=0.0000<0.05,拒绝原假设→适用固定效应模型
双因素效应结果最下方的P值代表个体效应,仅能用于判断是否存在个体效应
怎么检验时间效应呢?使用stata命令testparm,检验所有的时间虚拟变量系数是否都为0。如下,P=0.0742>0.05,不能拒绝原假设,即不存在时间效应。
testparm i.year //检验所有的时间虚拟变量系数是否都为0
本文参考:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。