1 什么是基本假设与违背基本假设?

在回归模型中,一般假设误差的均值为0,且不同误差项之间的方差相等、独立或者不相关

如何处理回归模型中的异方差性和自相关性问题?(python)_统计学

但实际建模过程中,误差项的方差可能不等,即异方差性

如何处理回归模型中的异方差性和自相关性问题?(python)_方差_02

或者误差项间的协方差不为0,即存在自相关性

如何处理回归模型中的异方差性和自相关性问题?(python)_权重_03

这里的自相关不是指两个或两个以上的变量之间的相关关系,而是指一个变量前后期数值之间的相关关系

2 异方差产生的原因?

在实际建模时,经常会出现某一因素或某些因素随着解释变量观测值的变化而对被解释变量产生不同的影响,导致随机项产生不同的方差。比如90年的房价方差与20年的房价方差,就存在巨大的差异。

3 异方差会带来哪些问题?

当数据存在异方差时,就不能用PLS,因为PLS会高估回归系数,导致不显著的系数变为显著。具体问题有:

  • 参数估计值虽是无偏的,但不是最小方差线性无偏估计
  • 参数的显著性检验失效
  • 回归方程的应用效果极不理想
4 如何判定数据存在异方差?

1)残差图分析法

残差为纵坐标其他变量为横坐标画散点图。常用横坐标:y的拟合值、x、观测时间或序号。

根据残差图如何判定:

  • 当回归模型满足所有假定时,残差图上的n个点的散布应是随机的,无规律
  • 如果回归模型存在异方差,残差图上的点的散布会呈现出一定的趋势。比如残差随x值得增大而增大或减小而减小,具有明显的规律。
代码解读
#建模
result = smf.ols('y~x',data=df).fit() 
para = result.params
#打印模型的参数
print(result.summary())
 
#计算残差
eres = result.resid
#print(eres)
 
#残差图
fig, ax = plt.subplots(figsize=(8,6))
ax.plot(eres, 'o', label='resid')
ax.plot([0, 53], [0, 0], c='black', linestyle='-',alpha = 0.4)
  • 1.
  • 2.