※ 引述《developme223 (allen)》之銘言:
: [問題類型]:
: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
: [軟體熟悉度]:
: 入門(寫過其他程式,只是對語法不熟悉)
: [問題敘述]:
: 請簡略描述你所要做的事情,或是這個程式的目的
: 程式碼:
: model.1 <- lm(TAC ~ 0 +TA +REC +PPE ,data=merge.data.3)
: model.2 <- lm(merge.data.3$RIR ~ model.1$residual)
: 其中,
: merge.data.3 大概資料型態:
: Code RIR TAC TA REC PPE
: 1 20 200 0.5 . .
: 2 30 . . . .
: .
: .
: .
: 533 . . . . .
: 先跑一個簡單線性回歸模型(model.1),取出此模型之殘差,
: 再跑一次簡單線性回歸(model.2),但此時殘差(model.1$residual)
: 的排列與原先的data.frame不同(無法執行,跑出Variable lengths differ)
: 有嘗試用cbind與data.frame重組資料,但好像也無法解決,想請教各位高手
: 。
: [關鍵字]:
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.37.172
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1448992439.A.9FA.html
當你建立 lm 物件時,該物件會保留有參與的資料內容。
y <- c(NA,1,2,3, 4,5, 6)
x1 <- c( 1,2,2,2, 2,3,NA)
x2 <- c( 3,5,3,4,NA,3 ,2)
m <- lm(y ~ x1 + x2)
m$model
y x1 x2
2 1 2 5
3 2 2 3
4 3 2 4
6 5 3 3
可以看出實際使用的資料只有 lm物件$model 的內容。
這樣你即可以檢查了。