检验内生性问题方法——Hausman检验
今天在做stata分析时,遇到了内生性这个问题,这对利用stata做回归等实证分析时,是常见的也是重要的一种方法,今天就和大家讲讲这个方法。大家可以把想要学习的知识点通过后台私信的方式进行留言,我们都会给大家讲到的~
工具变量选择问题
1.IV应该尽量是外生的(如历史/自然/气候/地理之类),它应该在理论上对被解释变量(以下称Y)没有直接影响,但应该通过影响被工具的变量(以下称X)而间接影响被解释变量Y。
2.如果上述理论逻辑通的话,将内生变量X作为解释变量,IV和其他变量(X2)作为解释变量,看IV是否显著,它应该显著。如果选了多个IV,就用F TEST看其是否都不显著。同时,如果在多个IV中,有一个是确定为外生的,那么,可以用Sargan test ofoveridentifying restrictions来检验其他的IV是不是确实是外生的。
3. 如果上述都没有问题,做一下IV回归。完成后,用HAUSMAN检验,这个检验的原假说是IV回归与原回归(不用IV的回归)的变量的系数并没有显著的不同。看一下P值,如果P小于比如说0.1,或者0.05,那么,说明IV回归与原来的回归显著不同,原来的方程的确有内生性问题导致的估计偏误。反之,如果P很高,超过0.1,或0.05,那说明IV回归与原来的回归没有显著不同,无法拒绝原来的回归没有显著的内生问题导致的估计偏误的原假设。
4.如果选择的IV本身就影响Y,那它就不能被作为IV。例如,Y在左边,右边是X(被工具的),X2,IV。当IV被放在方程右边时,它最好是不显著影响Y的。在Acemoglu(2001)里,他就检验了他们的IV是否直接影响被解释变量,结果说明不直接影响,于是这个IV是好的。当然,一个好的IV在前面的回归中也可能是显著的(不过一般如果理论和逻辑上IV是通过被工具的内生解释变量间接影响被解释变量的话,一般来说应该是被工具的内生解释变量使得IV不显著,或者由于两者相关性很高,两者都不显著),但判断的标准还只是t值。这个变量显著完全有可能是因为它影响了其他显著的变量(比如被工具的变量),如果是这样,当包括了IV在原方程中以后,其他变量(特别需要注意的是被工具的变量X)的系数可能发生明显变化。
关于HAUSMAN TEST检验的若干问题
具体参见Statacorporation, 2001, STATA 7 Reference H-P, Stata Press
1.Hausman Test的命令(hausman)假设使用者知道需要比较的两个方程中哪一个是“无论原假说成立与否都是consistent”,哪一个“在原假说下不仅efficient而且consistent,但若原假说不成立,则inconsistent”,然后,在STATA 8下,步骤是:
(1) obtain an estimator that is consistent whether or not the hypothesisis true;
(2) store the estimation results under a name-consistent using estimatesstore;
(3) obtain an estimator that is efficient (and consistent) under thehypothesis thatyou are testing, but inconsistent otherwise;
(4) store the estimation results under a name-efficient using estimatesstore;
(5) use hausman to perform the test
hausman name-consistentname-efficient [, options]
举例:
(1)在关于是FE还是RE的检验中,原假说是非观测效应与解释变量不相关,备择假说是两者相关。FE是无论原假说成立与否都是consistent,而RE在原假说下是consistent,并且Asymptotically efficient(样本越大越有效),但如果原假说被拒绝,则RE不是consistent的 (Hausman, 1978)。
所以做法应该是(STATA8的命令):
sort code year (排序)
tis year (时间变量是year)
iis code (表示单位的是code)
xtreg y x x2, fe(假设其中x是需要被工具的变量)
est store fixed (在STATA8里命令有变化,不再是HAUSMAN,SAVE了,这里的fixed实际上就是个变量名,用什么都行)
xtreg y x x2, re
hausman fixed
(2)比较OLS(或FE)和IV(或IVFE)
先做IV,因为,它无论如何都是consistent的,但OLS只有在原假设成立,即OLS结果与IV结果相同,内生性问题没有时,才是consistent的。所以,应该先做IV。
在老版本的STATA里,如果不加特殊说明,STATA就会默认为先写的回归命令得到的是总是一致的估计结果,后写的得到的是备择假设下不一致的估计结果。现在HAUSMAN命令规范了,而且扩展了。先跑哪个不重要,关键在于写最后HAUSMAN命令时候的顺序,而且如果最近跑的一个没有用EST存名字的话,要用“.”代替。
注意 :
(1)对以上检验的理解的另一种方式是,我们先做一个假设条件要求更松的估计,然后再做一个假设条件更严格的。相比之下, IV(IVFE) 比 OLS(FE)要求更松 。容易搞混的是FE比RE假设条件更松。RE假设未观察因素与解释变量是正交的,只不过在未观察因素里有两个部分,一是与个体单位有关的,二是完全随机的,RE在做估计的时候,是用这两个部分的方差计算出一个指数λ,来做quasi-demean,也就是说在去平均的时候是用原值的y或x减去λ乘以y或x的均值,然后用GLS估计。当λ为0时,就等价于pooled OLS,当λ为1时,说明完全随机的部分可以忽略,所有未观察因素都是与单位有关的,于是就等价于FE。但FE不需要假定未观察因素与解释变量是正交的,在做FE时,固定效应都被差分掉了,所以也可得到consistent的结果。当我们先做假设更严格的估计时,HT与一般检验一样,检验值大,P小,则原假说拒绝,应该接受假设更松的。在FE与RE的比较里,卡方大,接受FE。在OLS(FE)与IV(或IVFE)的比较里,当卡方值大时,P小时,拒绝原假说,IV结果和OLS(或FE)有不同,于是接受IV结果。
(2)从以上讨论可以看出,我们需要事先知道HT时两个方程的顺序和性质。在STATA7以下,当使用hausman命令时,它默认的顺利(缺省参数more)就是上面的顺序。如果你做的顺序相反,就应该加上参数,命令为hausman,less,如果没有写less,那么,STATA是不知道谁更efficient的,这时,你本来应该得到一个正的结果,就完全可能因为顺序错了,又忘记了参数less而得到一个相反的负数结果。
在STATA8里命令变化,可以变顺序,但要使用者注意正确使用参数:
The order of computing the two estimators may be reversed. You have tobe carefulthough to specify to hausman the models in the order "alwaysconsistent" first and"efficient under H0" second. It is possible to skip storingthe second model and referto the last estimation results by a period (.).
(3)在其他可比较的情况下,顺序并不重要(如果没有谁更有效的差别)
hausman may be used in any context. The order in which you specify the regressors ineach model does not matter, but it is your responsibility to assure thatthe estimatorsand models are comparable, and satisfy the theoretical conditions (see(1) and (3)above).
(4)当HT出现负值时
先看一下是不是方程顺序错了。如果没有错,那么在小样本数据下也并不是不可能得到负值。当HAUSMAN检验的X2值是负的时候,意思是强烈地表明两个被比较的回归结果系数相同(或者说无显著差异)的原假说不能被拒绝,尤其是小样本中很可能出现。这是STATA7的使用手册上的一个例子说的。但在STATA8里,又说,出现负值这种情况时,If this is the case, the Hausman test is undefined. Unfortunately, this is not a rare event. Statasupports a generalized Hausman test that overcomes both of these problems. Seesuest for details.可以通过help suest了解。
3.STATA命令
(1)比较FE和RE
sort code year (排序)
tis year (时间变量是year)
iis code (表示单位的是code)
xtreg y x x2, fe(假设其中x是需要被工具的变量)
est store fixed (在STATA8里命令有变化,不再是HAUSMAN,SAVE了,这里的fixed实际上就是个变量名,用什么都行)
xtreg y x x2, re
hausman fixed
(2)比较IVFE和IVRE
xtivreg y (x=iv) x2, fe
est store f1
xtivreg y (x=iv) x2, re
hausman f1
一般来说用不着这个比较,因为在这之前,你已经知道FE和RE谁好了,就将好的结果与它的IV结果比就行了。
(3)比较IVFE和FE
xtivreg y (x=iv) x2, fe
est store f2
xtreg y x x2, fe
hausman f2
再重复一遍, 如果结果是P小,卡方大才说明IV回归是必要的,原来是有内生问题。