前面讲了异方差,也讲了如何用图解法判断是否存在异方差。这篇文章会讲到如何用统计的方法来判断是否存在异方差。方差。检验异方差性的统计方法有很多。本节我们只讲比较常见和常用的白测试(Whitetest)。假设现在我们做了如下的回归方程:如果我们要用怀特检验来检验上面的方程是否存在异方差性,主要步骤如下:1.step1:对方程进行普通ols估计,得到残差方程的ui。2.step2:取第一步估计的残差为y,构造如下方程:上面构造的方程看似复杂,但主要由三部分组成:原方程的解释变量,解释变量的平方变量,以及解释变量之间的交互项。等式建立后,估计并求解等式。3.step3:回想一下什么是异方差性,即残差项与某个或某个x是否存在相关性。那么如果step2方程中的每个系数都为0,是否意味着残差与任意x无关?x是相关的,即存在异方差性,我们称之为备择假设。当原假设成立时,可知step2方程的R^2乘以样本量n服从自由度等于step2回归方程变量个数的卡方分布。在服从卡方分布的前提下,通过与卡方分布的临界值比较,可以判断原假设是否成立。4.step4:如果计算出的nR^2显着高于所选显着性水平的卡方临界值(p_value值),则需要拒绝原假设,即方程存在异方差性。如果存在异方差,还可以检查step2方程估计结果中各个变量的显着性,进而判断是哪个变量引起了异方差。需要注意的是,如果模型包含多个变量,此时引入多个变量的交互作用项会大大降低方程的自由度,可以视情况选择不加。当然,上面的过程并不需要我们自己去实现。Python也有现成的包可以调用:statsmodels.stats.diagnostic.spec_white(resid,exog)resid表示原方程的残差,exog表示step2中的方程形式。通过上述函数,输出卡方值、对应的p_value和自由度。更多关于异方差的内容,可以点击文首相册栏目查看。
