5.7.5 最小二乘法拟合和QR分解
函数 lsfit()
返回最小二乘法拟合(Least squares fitting)的结果列表。赋值可以采用入下命令
> ans <- lsfit(X, y)
这样就得到最小二乘法拟合结果,其中 y
是观测向量,X
是设计矩阵。更细节的东西可以查看帮助文档,同时参考相关的回归诊断(regression diagnostics)函数 ls.diag()
。注意总的平均值会被自动加入而没有必要显式的加入到 X
的列中。实际上,你在回归分析中可能已经习惯使用 lm(.)
(见线性模型部分) 而不是 lsfit()
。
另外一个密切相关的函数是 qr()
及其相关函数。注意下面的赋值情况
> Xplus <- qr(X)
> b <- qr.coef(Xplus, y)
> fit <- qr.fitted(Xplus, y)
> res <- qr.resid(Xplus, y)
这些将会计算 y
在 fit
的 X
上的正交投影,在 res
正交补空间上的投影以及在 b
投影上的系数向量。本质上而言,b
和 Matlab ‘反斜线’操作符的结果是一致的。
这里没有要求 X
有完整的列秩,因此可能出现冗余。如果出现,就会被自动去掉。
这里提到的方法是原始的底层实现的最小二乘法计算。尽管在一些情况下仍然有效,但是它现在已经被统计模型特征分析的办法所替换,这些内容将会在 R 相关的统计模型中讨论。