异方差性:R中的lm函数权重

时间:2018-03-06 12:26:15

标签: r regression lm

我很困惑。我有以下型号:lm(GAV~EMPLOYED)。这个模型具有异方差性,我相信这个模型的误差标准差可以用一个名为SDL的变量来近似。

我已经拟合了相应的加权模型,在将每个项除以变量SDL之后产生,使用两种形式:

  

lm(I(GAV / SDL)~I(1 / SDL)+ I(雇用/ SDL)-1)   和   lm(GAV~EMPLOYED,权重= 1 / SDL)

我认为他们会得到相同的结果。但是,我得到了不同的参数估计...

有人能告诉我我正在犯的错误吗?

提前致谢!

菲德

1 个答案:

答案 0 :(得分:1)

help("lm")清楚地解释了:

  

加权最小二乘法与权重weights一起使用(即,   最小化和(w * e ^ 2));

所以:

x <- 1:10
set.seed(42)
w <- sample(10)
y <- 1 + 2 * x + rnorm(10, sd = sqrt(w))

lm(y ~ x, weights = 1/w)
#Call:
#  lm(formula = y ~ x, weights = 1/w)
#
#Coefficients:
#(Intercept)            x  
#      3.715        1.643  
lm(I(y/w^0.5) ~ I(1/w^0.5) + I(x/w^0.5) - 1)
#Call:
#  lm(formula = I(y/w^0.5) ~ I(1/w^0.5) + I(x/w^0.5) - 1)
#
#Coefficients:
#I(1/w^0.5)  I(x/w^0.5)  
#     3.715       1.643

顺便说一下,您可能对library(nlme); help("gls")感兴趣。它为异方差性建模提供了更复杂的可能性。