[Rd] Discourage the weights= option of lm with summarized data
Viechtbauer Wolfgang (SP)
wolfgang.viechtbauer at maastrichtuniversity.nl
Sat Oct 7 15:34:07 CEST 2017
Using 'weights' is not meant to indicate that the same observation is repeated 'n' times. It is meant to indicate different variances (or to be precise, that the variance of the last observation in 'x' is sigma^2 / n, while the first three observations have variance sigma^2).
From: R-devel [mailto:r-devel-bounces at r-project.org] On Behalf Of Arie ten Cate
Sent: Saturday, 07 October, 2017 9:36
To: r-devel at r-project.org
Subject: [Rd] Discourage the weights= option of lm with summarized data
In the Details section of lm (linear models) in the Reference manual,
it is suggested to use the weights= option for summarized data. This
must be discouraged rather than encouraged. The motivation for this is
With summarized data the standard errors get smaller with increasing
numbers of observations. However, the standard errors in lm do not get
smaller when for instance all weights are multiplied with the same
constant larger than one, since the inverse weights are merely
proportional to the error variances.
Here is an example of the estimated standard errors being too large
with the weights= option. The p value and the number of degrees of
freedom are also wrong. The parameter estimates are correct.
n <- 10
x <- c(1,2,3,4)
y <- c(1,2,5,4)
w <- c(1,1,1,n)
xb <- c(x,rep(x,n-1)) # restore the original data
yb <- c(y,rep(y,n-1))
print(summary(lm(yb ~ xb)))
print(summary(lm(y ~ x, weights=w)))
Compare with PROC REG in SAS, with a WEIGHT statement (like R) and a
FREQ statement (for summarized data).
More information about the R-devel