[R] updating observations in lm
ivo.welch at gmail.com
Mon May 27 18:52:23 CEST 2013
hi bert---thanks for the answer.
my particular problem is well conditioned [stock returns] and speed is
about 4 years ago, I asked for speedier alternatives to lm (and you
helped me on this one, too), and then checked into the speed/accuracy
. for the particular problem I had, solve(crossprod(x),crossprod(x,y))
worked reasonably well. moreover, it is easy to debug, being so
simple. it was faster than lm() by a factor 5.. (for a more generic
library use, it would be nice to have a warning flag when this
"algorithm" fails, in which case it would fall back on a more robust
algorithm or at least emit a warning. I wonder how much it would cost
to check the condition of the matrix before deciding on the
I looked at update(), but its documentation seems to refer to updating
models, not observations. even if it did, given the speed of lm(), I
don't think it will be that useful.
Ivo Welch (ivo.welch at gmail.com)
On Mon, May 27, 2013 at 9:26 AM, Bert Gunter <gunter.berton at gene.com> wrote:
> 1. You should not be fitting linear models as you describe. For why
> not and how they should be fit, consult a suitable text on numerical
> methods (e.g. Givens and Hoeting).
> 2. In R, I suggest using lm() and ?update, feeding update() data
> modified as you like. This is, after all, the reason for update().
> -- Bert
> On Mon, May 27, 2013 at 8:12 AM, ivo welch <ivo.welch at anderson.ucla.edu> wrote:
>> dear R experts---I would like to update OLS regressions with new
>> observations on the front of the data, and delete some old
>> observations from the rear. my goal is to have a "flexible"
>> moving-window regression, with a minimum number of observations and a
>> maximum number of observations. I can keep (X' X) and (X' y), and add
>> or subtract observations from these two quantities myself, and then
>> use crossprod.
>> strucchange does recursive residuals, which is closely related, but it
>> is not designed for such flexible movable windows, nor primarily
>> designed to produce standard errors of coefficients.
>> before I get started on this, I just wanted to inquire whether someone
>> has already written such a function.
>> Ivo Welch (ivo.welch at gmail.com)
>> R-help at r-project.org mailing list
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
> Bert Gunter
> Genentech Nonclinical Biostatistics
> Internal Contact Info:
> Phone: 467-7374
More information about the R-help