使用lm的残差总和不为零

时间:2014-06-02 10:07:03

标签: r linear-regression

我定义了两个变量xy。我想在y上回归x,但使用lm的残差总和不为零

以下是变量:

x<-c(1,10,6,4,3,5,8,9,0,3,1,1,12,6,3,11,15,5,10,4)    
y<-c(2,3,6,7,8,4,2,1,0,0,6,1,3,5,2,4,1,0,1,9)
gh<-lm(y~x)

sum(gh$residuals)
# [1] 4.718448e-16 

我不明白为什么残差总和不为零。 OLS的程序应该为零。

由于

1 个答案:

答案 0 :(得分:2)

Floating-point numbers精度有限。只有一组有限的实数可以完全表示为32位或64位浮点数;其余部分通过将它们四舍五入到最接近可以完全表示的数字来近似。

这意味着,虽然在数学上残差应该总和为零,但在计算机表示中它们可能不会。

我强烈推荐What Every Computer Scientist Should Know About Floating-Point Arithmetic