2017-07-06 83 views
0

R是新增功能,如何在R中執行迴歸而不列出變量名稱,而是列號?我有很多的迴歸我想在一個循環估計,我試圖做到這一點,r按列號調用數據幀變量

stepreg<-with(newdata, lm(OutputChg~Furrow)) 

而且我想通過其列#,而不是標題叫Furrow。這可能嗎?與往常一樣,任何幫助非常感謝,謝謝!

+0

線的東西取決於你實際上是在做什麼?查看'lm.fit'並在給定變量傳遞給'lm.fit'之前創建你想要的模型矩陣。如果您要通過數據進行疏通,通常會發出警告不要這樣做;如果你打算這麼做,我假設你理解這些問題。根據您想要安裝的列數/型號數量,您可以使用pkg包裝來完成此操作。另外,不要用'with()'和公式建模。使用'data'參數來代替它:'stepreg < - lm(OutputChg〜Furrow,data = newdata)'。 –

回答

1

您可以構建一個公式每個循環內,並且在迴歸使用它,沿着

allnames <- names(iris)[-5] # find names to which you wish to regress 

for (name in allnames) { 
    myformula <- formula(sprintf("%s ~ Species", name)) 
    print(summary(lm(myformula, data = iris))) 
}