[英]Incorrect estimates of lm alternatives
Dirk Eddelbuettel提供了使用lm
命令估計線性回歸的替代方法。 請參閱: http : //dirk.eddelbuettel.com/blog/2011/07/05/
但是,他提到:
“嚴格來說,它是我們唯一可以與lm.fit()進行比較的,它也使用了一個旋轉方案。在退化模型矩陣的情況下,所有其他方法,包括四種最快的方法,都容易產生不正確的估計。“
有人可以通過提供一個例子來說明這一點,當估計值對於lm是正確的,而不是替代方法嗎?
安裝RcppArmadillo或RcppEigen並查看help(fastLm)
:
## case where fastLm breaks down
dd <- data.frame(f1 = gl(4, 6, labels = LETTERS[1:4]),
f2 = gl(3, 2, labels = letters[1:3]))[-(7:8), ]
xtabs(~ f2 + f1, dd) # one missing cell
mm <- model.matrix(~ f1 * f2, dd)
kappa(mm) # large, indicating rank deficiency
set.seed(1)
dd$y <- mm %*% seq_len(ncol(mm)) + rnorm(nrow(mm), sd = 0.1)
summary(lm(y ~ f1 * f2, dd)) # detects rank deficiency
summary(fastLm(y ~ f1 * f2, dd)) # some huge coefficients
我們將這個例子歸功於Doug Bates。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.