回归模型
大量的统计模型都是基于回归模型(regression model)开发出来的。数据分析中,回归模型及其衍生模型是应用最广的模型。估计回归模型有不同的方法,最古老且最流行的一种是最小二乘法(least squares)。在EViews中,实施最小二乘法的命令是ls,least squares之意。
ls命令在EViews中不仅可以用来估计传统的回归模型,还可以用来估计ARMA模型和面板数据模型,后两项应用你在接下来的教程中会看到。
估计线性回归模型
沿用上一讲中生成的模拟数据,假如我们想要用最小二乘法估计下面这样一个多元线性回归模型:$$y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \beta_3 x_3 + u$$可以通过以下代码实现:
equation eq1.ls y c x1 x2 x3 '创建一个方程对象eq1并估计
'ls后依次跟因变量和自变量,其中,c表示截距
'上面的代码等价于下面两行代码:
'equation eq1
'eq1.ls y x1 x2 x3
'也等价于:
'group grp1 x1 x2 x3
'equation eq1.ls y c grp1
freeze(tab1) eq1 '把估计结果存入tab1
tab1如下图所示:

在上面的表中,红色的文字是我在tab1里加入的对1-5行的解释。Variable一列指示模型的自变量(包括截距);Coefficient一列是对应回归系数的估计值;Std. Error是系数估计量的标准误;t-Statistic是检验显著性的t统计量;Prob.是(双边)显著性检验的p值。接下来,R-squared是模型的R方;Adjusted R-squared是调整的R方;S.E. of regression是回归标准误,也就是模型误差的标准差的估计值;Sum squared resid是残差平方和;Log likelihood是模型的对数似然;F-statistic是检验联合显著性的F统计量;Prob(F-statistic)是联合显著性检验的p值;Mean dependent var是因变量的平均值;S.D. dependent var是因变量的样本标准差;Akaike info criterion是模型的AIC;Schwarz criterion是模型的SIC;Hannan-Quinn criter.是模型的HQIC;Durbin-Waston stat是检验模型误差自相关的DW统计量。
鼠标模式下实施上述的最小二乘估计可以这样做:鼠标选中workfile,然后点击主菜单的Quick/Estimate Equation,随后EViews会弹出估计模型的对话框:

类似使用ls命令,在Specification窗口依次输入因变量和自变量,确定后就能得到估计结果,它们会被存在一个临时的equation对象里。Method处是一个下拉菜单,可以选择针对不同模型的不同估计方法,默认的是如图所示最小二乘法。在EViews中,鼠标模式进行模型估计基本都是通过上面这个对话框实施的。Sample处可以设定使用的样本,后面我会单独介绍样本设定的问题,这里先按下不表。
当估计完一个模型后,如果你不想更换equation对象,仍想在同一个对象上进行其他估计,你只需点击equation对象窗口上的Estimate,估计模型的对话框就会再次弹出。
假设检验
要检验单参数的显著性或回归系数的联合显著性,利用ls命令报告的t统计量或F统计量就足够了。如果你需要检验其他类型的原假设,可以利用wald命令做Wald检验。使用wald命令,你得告诉EViews你要检验哪些参数,EViews用c(1)、c(2)来表示第一个参数、第二个参数(c即coefficient之意),以此类推。具体而言,c(1)就是估计得到的表中,从上向下数的第一个参数,对上面的例子,它就是\(\beta_0\),同理,c(2)就是\(\beta_1\)。
以下是利用wald命令进行检验的一些例子:
eq1.wald c(2)=1 '检验x1的系数等于1
eq1.wald c(3)+c(4)=0 '检验x2与x3的系数和为0
eq1.wald c(3)=-0.5,c(4)=0.5 '检验x2的系数等于-0.5且x3的系数等于0.5
eq1.wald c(2)*c(3)+c(4)=0 '检验x1的系数乘x2的系数再加上x3的系数等于0
wald命令执行后,会在equation对象窗口中显示检验的结果,它会报告一个F统计量和一个卡方(Chi-square)统计量,如果原假设的约束只有一个,它还会报告一个t统计量。下图是上面最后一个Wald检验的结果:

其中,Value一列是检验统计量的值;df一列分别是t分布、F分布、卡方分布的自由度;Probability一列是检验的p值。一般情况下,这三个统计量对应的检验结果不会有分歧,如果有,你可以只用卡方统计量对应的结果。
做Wald检验的鼠标模式为:估计完模型后,equation对象窗口左上选View/Coefficient Diagnostics/Wald Test – Coefficient Restrictions,然后输入待检验的原假设后点击OK。
估计非线性回归模型
如果你想估计的回归模型是非线性的,使用ls命令需要做一些调整:其后不再是跟因变量和自变量,而是跟去掉误差项的模型。举个例子,如果你想估计以下模型:$$y = \beta_0 + e^{\beta_1 x_1} + u$$你可以这样做:
equation eq2.ls y = c(1) + exp(c(2)*x1) 'c(1)和c(2)对应两个β参数
EViews报告非线性回归模型的估计结果,与上面线性的情形没有太大差别,但是,你需要注意下面的两条红线:

第一条红线显示了估计使用的最优化方法(默认为Gauss-Newton)以及优化过程中的步长选择方式(默认Marquardt steps)。在EViews中,大部分非线性模型的估计都用了数值最优化方法。第二条红线显示最优化过程有没有收敛。如果显示Convergence not achieved(即收敛未达成),或显示Failure to improve …,则表明估计结果是不可靠的,此时,需要更换最优化方法或步长选择方式,或增加迭代次数(EViews默认最大迭代次数是500)。实现的方法是利用ls命令的三个可选参数:
ls(optmethod = 值, optstep = 值, maxit = 值)
参数optmethod设置最优化方法,对非线性回归模型,其可选值有gauss(默认)、bfgs、newton和legacy。参数optstep设置步长选择方式,可选值有marquardt(默认)、dogleg和linesearch。对参数maxit,如果你不满足默认的最大500次迭代,你可以设其等于一个更大的数。
注意,参数optmethod的可选值,针对其他模型可能是不一样的。对一个陌生的模型,要了解参数optmethod的可选值有哪些,你可以通过鼠标模式对它进行设定,然后在捕获窗口查看相应的代码。鼠标模式仍然是选主菜单的Quick/Estimate Equation,在Specification窗口设好模型后,选Specification右侧的Options,然后在左下角就能对最优化方法进行设置了。下面我用一个移动平均模型演示说明:

可以看到,我把最优化方法设成了Kohn-Ansley,这对应optmethod=ka。
需要注意的是,如果你在EViews中估计模型使用了最优化方法,对同样的模型,使用同样的最优化方法进行多次重复估计,你有可能会发现每次估计的结果不会完全一样,会有细微的变化,这是最优化方法的算法决定的。因此,如果你在后面的教程里发现展示的代码在你的电脑里运行得到的(基于最优化方法的)估计结果与教程不一样,不必大惊小怪。
命令复习
(.)ls:实施最小二乘估计(.)wald:实施Wald检验
[注] ( . )命令表示命令可单独使用,也可跟在对象后使用;.命令表示命令只能跟在对象后使用。
练习
- 打开[数据导入]一讲练习中生成的401k.wf1,估计以下模型$$prate = \beta_0 + \beta_1 mrate + \beta_2 sole + u$$并检验\(\beta_2\)是否等于1。
- 版权声明:本作品使用知识共享(Creative Commons)的署名-非商业性使用-禁止演绎 4.0 国际许可协议。非商业转载请注明出处(作者及原文链接),商业转载请联系作者获得授权。

留言正在等待审核