假設我有一個公式(例如,myformula <- y ~ x1 + x2
)和一個數據集d。爲了診斷目的,我想看看最後在我的線性迴歸中使用的觀察結果(r <- lm(myformula, data=d)
)。這基本上需要根據d建立一個包含y,x1和x2的數據框,並刪除所有缺少數據的觀測數據(complete.obs)。或者,也許,操縱r對象的內容?顯示在語句中使用的第幾個obs
建議讚賞。
/IAW
假設我有一個公式(例如,myformula <- y ~ x1 + x2
)和一個數據集d。爲了診斷目的,我想看看最後在我的線性迴歸中使用的觀察結果(r <- lm(myformula, data=d)
)。這基本上需要根據d建立一個包含y,x1和x2的數據框,並刪除所有缺少數據的觀測數據(complete.obs)。或者,也許,操縱r對象的內容?顯示在語句中使用的第幾個obs
建議讚賞。
/IAW
試圖推出自己的之前,看看模型對象(使用str(r)
得到什麼是有一個峯值)或查找文檔中的相關位。從?lm
:
model, x, y, qr
邏輯值。如果TRUE
返回擬合的相應分量(模型框架,模型矩陣,響應,QR分解)。
由於model
默認爲true,我們所要做的就是在結果中查找它。的文件的價值節描述返回的對象:
y
如果被請求的,所使用的響應。
x
如果要求,使用的模型矩陣。
model
如果請求(默認),使用的模型框架。
現在一個例子:
> mod = lm(mpg ~ disp + I(disp^2), data = mtcars)
> head(mod$model)
mpg disp I(disp^2)
Mazda RX4 21.0 160 25600
Mazda RX4 Wag 21.0 160 25600
Datsun 710 22.8 108 11664
Hornet 4 Drive 21.4 258 66564
Hornet Sportabout 18.7 360 129600
Valiant 18.1 225 50625
注意,這是嚴格的數據仍然是一個data.frame
。如果你想模型矩陣,matrix
與虛擬變量爲攔截和任何因素,設置x = TRUE
在lm
調用,然後看看mod$x
。