## Multiple Linear Regression Estimation without full recalc

### Remember to vote up questions/answers you find interesting or helpful (requires 15 reputation points)

Ok, so I am running a classic linear regression where betahat = (X'X)^-1X'y

Due to performance issues, I would like to estimate betahat with an additional data point (x1,x2,x3,x4,...,y) without recalculating based on the whole history.

Could I do some sort of multiplication based on Xmu or std deviation of the variables? And then what is the probability that betahat is predicting the true beta from this point? This would be used so that I can judge when I need to do a full recalculation.

Thank you for any help or suggestions, Jeremy

-

## 1 Answer

There's a very large literature on updating solutions to least squares problems as new data are added. The naive formula $\hat{\beta}=(X^{T}X)^{-1}X^{T}y$ can be problematic in practice because of numerical issues with ill-conditioning. The QR factorization is typically a much better choice in practice. There are lots of papers on updating the QR factorization as data are added. See for example:

http://eprints.ma.man.ac.uk/1192/01/covered/MIMS_ep2008_111.pdf

-
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 1, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9146888256072998, "perplexity_flag": "middle"}