如何用R来处理OLS中的异方差性

时间:2014-06-24 21:13:10

标签: r variance

我正在使用OLS方法拟合标准多元回归。我有5个预测变量(2个连续和3个分类)加上2个双向交互项。我使用残差与拟合图进行了回归诊断。异方差性非常明显,bptest()也证实了这一点。

我不知道接下来该做什么。首先,我的因变量是相当对称的(我不认为我需要尝试转换我的DV)。我的连续预测因素也没有高度倾斜。我想在lm()中使用权重;但是,我怎么知道要使用什么重量?

有没有办法自动生成权重以执行加权最小二乘?或者你还有其他方法吗?

2 个答案:

答案 0 :(得分:5)

处理异方差性的一个明显方法是估计异方差性一致的标准误差。大多数情况下,它们被称为强健或白色标准错误。

您可以通过多种方式获得R中的强大标准错误。以下页面描述了在R中获得稳健标准错误的一种可能且简单的方法:

https://economictheoryblog.com/2016/08/08/robust-standard-errors-in-r

然而,有时会有更微妙且更精确的方法来处理异方差性。例如,您可能会遇到分组数据,并发现自己处于数据集中标准错误异构的情况,但在组(集群)中是同质的。在这种情况下,您可能希望应用群集标准错误。请参阅以下链接以计算R中的聚类标准错误:

https://economictheoryblog.com/2016/12/13/clustered-standard-errors-in-r

答案 1 :(得分:3)

您的样本量是多少?我建议你使标准错误对异方差性有很强的作用,但你不要担心异方差性。原因是无论是否存在异方差性,您的参数估计都是无偏的(即它们都是正常的)。受影响的唯一因素(在线性模型中!)是方差 - 协方差矩阵,即参数估计的标准误差将受到影响。除非你只关心预测,否则调整标准误差对于异方差应该是稳健的。

参见例如here如何在R中执行此操作。

顺便说一句,对于您的权重解决方案(这不是我建议的),您可能需要从?gls包中查看nlme