多元回归分析的Eviews实现(二)
2012-04-10 13:30阅读:
异方差检验:
LnOutput 与
Resid
的散点图:
选取LnOutput
和 Resid
建立group,
View->Graph->Scatter : 输入 LnOutput
Resid
(似乎可以看出一点点异方差。中间某处离散程度较小)
【这个图有一定的问题。最初只是想用来看看残差项与Y项有没有关系,但散点图上看没有明显关系。但这不意味着Resid不存在明显规律性。所以这个图并不能说明什么】
Goldfeld-Quandt
Test:
G-Q检验的基本思想是:将样本值分为容量相等的两部分,分别进行回归,并得到两者的残差平方和。他们除以自由度后均服从卡方分布,构建统计量F等于两者残差平方和之比,则F服从F分布。若F大于临界值,则表明两者的残差平方和有较大的差异,存在(递增)异方差;若F小于临界值,则不存在递增异方差。
步骤:
(1)排序:在Workfile窗口中双击LnLabor,点右上角Sort进行排序,Ascending,递增。(对Lncapital 排序应该也可以,
因为只是为了分开样本而已。或直接在命令栏中输入sort lnlabor)
(2)本案例共有30个数据,剔除四分之一即剔除8个。将样本1:11,20:30分别作为两组:样本1,样本2。
(3)分别通过1:11和20:30做回归。首先在Workfile右上角选Sample,Range Pairs 由 @all 改为 1 11。
再使用Estimate
Equation 做回归模型。得到下表:
同样,将Sample处改为20 30,得到下表:
(4)此处要用到两者的Sum squared resid 值(课件里的SSE,残差平方和)之比。
F=SSE2/SSE1 = 13.70482 /
5.154901 = 2.658600 ,两者SSE自由度均为 11 – 2 - 1 =8。
因此F~F(8,8)。 查分布表,a=0.05时,F临界值为3.69;a=0.10时,F临界值为2.59,此处F>临界值,因此可以认为存在递增型异方差(a=0.10)。
White Test :
White
检验基本思路是构造et2关于x1t和x2t的辅助回归模型(二元条件下),构造统计量n*R2~χ2,若n*R2小于临界值则认为不存在异方差。
步骤: View ->
Residual Test -> Heteroskedasticity Test
->选White,出现如下对话框
(注:Heteroskedasticity即异方差的意思。)
打钩 Include White
cross terms 即含交叉项,
不打钩则不含交叉项。
(1)不含交叉项:
即建立的et的回归方程中只含x1^2 与 x2^2 项,而不含x1*x2项。
其中
F检验
Prob. F() = 0.1867 > 0.05
,总体不显著。(或者查F分布表可以发现F-statistic<临界值。)
White检验
Prob. Chi-squared = 0.173
>0.05
,不存在异方差。(或者查卡方(2)分布表可以发现 Obs*R-squared <临界值)
(注:Obs即 Observations, 观测值,
即n; Chi-Squared 即卡方)
(2)含交叉项:
即建立的et的回归方程中含x1^2 与 x2^2 项,还含x1, x2 , 和x1*x2项,共五项。
其中
F检验
Prob. F() = 0.0001 < 0.05
,总体显著。(或者查F分布表可以发现F-statistic<临界值。)
White检验
Prob. Chi-squared = 0.0021
<0.05 ,存在异方差。(或者查卡方(2)分布表可以发现 Obs*R-squared
<临界值。各变量Prob(t)也较小,说明各系数显著不为零,也说明存在异方差。
【在网上查了一下,对于多元模型要选有交叉项的,而且有无交叉项差别很大,比如此处无交叉项的White检验认为不存在异方差性,而有交叉项存在显著的异方差。而且老师的课件里也是直接给出含交叉项的White模型,因此无视上面无交叉项的结果吧。】
Glejser (Park)
Test:
Glejser检验思想:构建|et|对于xt的回归模型,如果他们之间存在某种显著的函数关系,则说明异方差性存在;否则不存在。具体步骤:|et|分别对每个解释变量做回归方程,如果模型参数显著不为零,则存在异方差,否则不存在异方差。
步骤:View->Residual Test -> Heteroskedasticity Test
-> 对话框选 Glejser
(另一种方法: 在命令栏中输入genre
e=abs(resid),生成残差绝对值数列。然后在命令栏中输入要建立的回归模型。如
ls e c lncapital^(-1)
)
注意,此处的Regressors默认为三个: c lnlabor lncapital
,应该自己做出修改。
(1)C
LnLabor
(2) C LnCapial
(3)C
LnLabor^(1/2)
(4)C
LnCapital^(1/2)
(5)C
LnLabor^(-1)
(6)C
LnCapital^(-1)
(7)(Park) e^2 c LnLabor
(8)(Park) e^2 c
LnCapital
1、各式中是coefficient的 Prob(t)都较小,说明显著不为零。其中,C LnLabor^(-1) 和C
LnCapital^(-1)中系数值都较大,且显著不为零。F检验效果比较好,方程整体显著,变量的t检验效果也较好,每个变量也显著。说明存在异方差。
2、各拟合方程的R2都很小,拟合效果不好。找不到合适的形式拟合abs(resid)。
【可以看到Glejser检验必须先验地知道拟合形式,换句话说就是得先蒙一个。但是我们蒙了八个拟合都很差。而寻找到拟合优度较好的回归形式对后面的异方差消除很重要。这算是Glejser的一大劣势吧。】
异方差的消除:
【网上对于异方差的消除多数是讲一元的。方法多是直接以1/x为权重,这种方法实质上就是假设x是e的一个线性函数。但上面的Glejser检验已经看出对本数据这种拟合很差,做完后也无法通过WhiteTest。另一种方法是直接以1/abs(e)做权重。试想每个残差项除以自己的绝对值,这样加权后的残差项实际上就是正负1序列,自然没有异方差。但是我在尝试这个方法的时候发现不能再做WhiteTest了。可能是程序问题?尚未解决】
由于Glejser检验的各种猜想形式拟合效果均较差,找不到适合形式的abs(resid)估计形式。但我们发现White检验中
Resid^2
=67.6841+21.5177*lnlabor+0.8083lnlabor^2-2.7980*lnlabor*lncapital
-26.9568*lncapital+2.0729*lncapital^2
拟合较好。(R2=0.6245)可以尝试将其作为权重消除异方差。
方法:在Estimate->Option中勾选加权,以怀特检验拟合式的倒数开根号作为权重。加权后重新得到的回归方程:
再次进行异方差检验,发现其可以通过a=0.05的怀特检验。
由泰勒公式,任意函数可以以多项式进行无限趋近拟合。尝试以三阶泰勒展开式拟合Resid^2。【QG想到的…竟然因为这次作业重新理解了泰勒公式。QGV5】
Genr
e2=resid^2
Ls e2 c lnlabor
lnlabor^2 lnlabor^3 lncapital lncapital^2
lncapital^3 (lnlabor^2)*lncapital
lnlabor*(lncapital^2)
lncapital*lnlabor
得到对e2的拟合式:
E2 =
25.040515698 + 11.35865701*LNLABOR + 57.3525726263*LNLABOR^2 +
11.3367180425*LNLABOR^3 - 9.19430138414*LNCAPITAL +
35.0208068448*LNCAPITAL^2 - 8.32782585494*LNCAPITAL^3 -
31.4073290231*(LNLABOR^2)*LNCAPITAL +
28.3024549379*LNLABOR*(LNCAPITAL^2) -
90.1192735142*LNCAPITAL*LNLABOR
Genr
wg=25.040515698 + 11.35865701*LNLABOR +
57.3525726263*LNLABOR^2 + 11.3367180425*LNLABOR^3 -
9.19430138414*LNCAPITAL + 35.0208068448*LNCAPITAL^2 -
8.32782585494*LNCAPITAL^3 - 31.4073290231*(LNLABOR^2)*LNCAPITAL +
28.3024549379*LNLABOR*(LNCAPITAL^2) -
90.1192735142*LNCAPITAL*LNLABOR
Equation ->
Estimate -> Option 勾选WLS。权重为1/(wg^2)^(1/4)
(平方再四次方是因为拟合值里存在负值) 再次进行White检验:
可以看到此时Prob.
Chi-Square(6) = 0.8299,
各变量系数不显著,方程整体不显著。证明此时非常有效得消除了异方差。
【不过做这样一个三阶泰勒要耗掉10个自由度,代价还是很大的。不过总样本数30个,虽然不算多,不过也还过得去。】