在得到回归分析的估计结果之后,如果只把目光停留在系数大小和显著性水平上,常常还不足以对模型质量形成可靠的判断。因为误差序列本身是否存在着自身前后关联、波动幅度不均匀或者分布形态异常,都会直接干扰到后续的统计推断,让原本看起来显著的结论站不住脚。所以,在EViews里怎样把残差序列单独导出来,导出之后又可以用它继续做哪些诊断检查,一个比较清晰的顺序是先把当前方程对应的残差保存成一个独立的对象,然后再按照模型的具体类型逐项往下排查。EViews本身支持将估计过程中产生的残差等结果另存为单独的序列,这样后面再做进一步分析的时候就会方便很多。
一、EViews残差序列怎么导出
EViews每次完成回归后都会自动生成一个名为RESID的默认残差序列,但这个序列实际上是一个临时对象,只要再去估计别的方程,它里面的数值就会被覆盖更新。如果想把残差长期保留下来,最好是给它单独起一个名字,存成一个不会轻易被冲掉的序列。
1、先打开已经估计好的方程
在工作文件窗口里,用鼠标双击那个代表回归结果的Equation对象,把它打开。打开之后,先确认一下当前的方程是不是我们想要的那一个,样本范围有没有选错,估计方法是不是我们设定的,这一步核对准确了再往下走。
2、生成一个独立的残差序列
在方程窗口的菜单栏上找到【Proc】,点击它,然后从下拉列表里选择【Make Residual Series】这一项。接着会弹出一个对话框,在里面输入一个新的序列名称,比如可以起名叫resid_sales或者resid_model1,这样一目了然。点击确定以后,工作文件里就会多出一个对应的Series对象。按照EViews帮助文档的说明,它默认生成的残差序列就是RESID,同时也提供了专门用来生成残差的命令。
3、检查一下残差序列的内容
双击刚才新生成的那个残差序列,把视图切换到表格模式,仔细查看里面的日期是否连续、有没有缺失值,样本长度是不是跟回归时使用的有效样本保持一致。如果模型当中使用了滞后项,那么最前面的几期出现空值是正常现象,只要它的有效样本范围跟回归方程输出的结果对得上,就不用担心。
4、把残差序列导出到Excel或CSV文件中
可以先选中这个残差序列,也可以把残差和原始的自变量、因变量组合成一个Group,然后通过【Proc】菜单或者工作文件窗口里的导出入口,选择【Export】。在导出设置里面,选好需要的文件格式,比如Excel或者CSV,再填上工作表名称和存放路径,最后保存就可以了。EViews支持把工作文件里的数据导出到外部文件,这个功能用起来比较直接。
二、EViews残差序列后续还能做哪些检验
把残差序列导出来只是第一步,更重要的是用它来对模型进行诊断。不过,具体要做哪些检验,还得根据数据是时间序列、截面数据还是面板数据来分别选择,不要一看见菜单里列出的项目就全都跑一遍。
1、检查残差有没有自相关
要判断残差是否存在序列自身的前后关联,可以在方程窗口里顺着【View】菜单,点开【Residual Diagnostics】,然后选择【Correlogram-Q-statistics】。在弹出的图形和表格里,观察自相关系数和偏自相关系数的衰减形态,以及Q统计量是否显著。如果初步判断下来觉得有问题,还可以接着运行【Serial Correlation LM Test】做进一步确认。一旦发现残差存在明显的自相关,往往意味着模型可能漏掉了重要的滞后变量,或者变量之间的关系还没有被完整地刻画出来。
2、检查是否存在异方差
对于误差波动幅度不均匀的问题,同样在残差诊断菜单里,进到【Heteroskedasticity Tests】这一项。根据模型的具体形式,可以选用White检验、Breusch-Pagan-Godfrey检验或者其他方法。如果检验结果表明确实存在异方差,那么普通最小二乘法给出的标准误就可能不太可靠了,因为它假定误差的波动是恒定的。这个时候就需要考虑调整模型的设定,例如对变量取对数、改用加权最小二乘法,或者直接采用稳健标准误来修正。
3、检查残差的分布形状
想要考察残差的分布是否接近正态,可以点击【Histogram-Normality Test】。界面上会显示出直方图,以及偏度、峰度和Jarque-Bera统计量。如果J-B统计量很显著,就说明残差的分布跟正态分布有较大的偏离。这种情况出现后,需要进一步去排查数据里是否存在异常值、模型是否遗漏了关键变量,或者样本期间内是否发生过结构性突变。
4、检查是否存在ARCH效应
对于金融领域的收益率序列、价格波动以及一部分高频数据,除了上面的常规检验,往往还需要专门做ARCH效应的检验。在方程窗口里找到【ARCH LM Test】运行一下,看看残差平方项是不是存在明显的自相关。如果存在,那就意味着传统的回归模型已经很难准确刻画波动聚集的特征了,这时可能需要考虑改用ARCH或GARCH这一类专门针对波动率建模的模型。EViews的帮助系统里也提供了这方面的详细说明和操作指引。
三、EViews残差检验结果怎么复核
在做完各种统计检验之后,不能单凭一个p值就下结论,因为随着模型样本、滞后阶数或者数据结构的变化,检验结果也可能跟着改变。
1、先看一看残差的图形
在进行任何统计检验之前,最好先画一下残差的时序图,用肉眼观察残差是不是大致围绕零值上下随机散布。如果发现有一段时期残差持续在零轴上方,另一段时期又持续在下方,或者波动幅度在某处突然放大,那很可能暗示模型存在某些方面的设定问题,需要进一步探究。
2、合理调整滞后阶数
在做自相关检验的时候,滞后阶数这个参数不宜随便填写一个默认值。可以结合数据的频率(比如日度、月度或季度)和业务上的周期规律来设定,然后多试几个不同的阶数,对比一下不同阶数下Q统计量和自相关系数的变化,看看自相关的结构是否稳定,避免因阶数选取不当而得出错误结论。
3、注意不同模型类型的差异
还需要留心一点,不同类型的模型所能做的残差检验并不完全一样。比如面板数据模型、VAR模型和普通时间序列回归,它们菜单里提供的诊断选项就有差别。如果发现某个检验项是灰色的或者根本找不到,先检查一下自己当前估计的模型类型和数据的结构,很可能是因为这个检验不适用于当前情况,不要轻易就认为是软件出了毛病。
总结
总的来说,在EViews里导出残差序列,基本的流程就是先在方程窗口通过【Proc】→【Make Residual Series】生成一个独立命名的残差序列对象,然后再根据需要把它导出到Excel或CSV文件里。后续的诊断工作,可以从自相关、异方差、正态性以及ARCH效应这几个方向依次进行。不过,任何检验都不应该孤立地只看一个p值,而应该把残差的图形、各项统计量、模型的设定结构以及样本的时间范围结合起来综合判断,这样得出的结论才比较可靠,也才能决定回归结果是否适合拿来做进一步的分析或预测。
