2012-12-23 68 views
2

我試圖創建R A公式公式的創建,形式要概括R中

Output~Var1+Var2+Var3

模型中的應用。它似乎工作的方式是給你想要預測的變量名,代字號,你想用作預測變量的變量名,然後在後面的參數中給出包含這些變量觀察值的數據幀。但是,我使用的數據框有很多變量,我不想全部輸入。這些變量也會相對頻繁地更改名稱,所以這將是努力不斷更改我的代碼。本質上,我想知道如何寫

Output~(All the variables that aren't the output) 

雖然我也需要排除一些其他變量以及。 對不起,我不知道發生了什麼,公式沒有太多幫助,這和我以前見過的任何其他編程或R結構不同。

感謝您的幫助,

ň

+6

'Output〜.'將其他所有內容放在RHS上 – James

+0

謝謝。我怎樣才能排除另一個變量?將!變量做到這一點? –

+2

僅給出'data'參數給給你想要包含的變量的數據框的子集。 – Roland

回答

5

啊,我找到了一個更好的解決方案:功能

reformulate(termlabels = colnames(InputTable), response = 'Prediction') 

將創建一個從您提供的字符串的公式。根據需要操作colname以動態選擇模型中使用哪些變量。

1

其實,?公式文檔提供了一個可能的答案。它是,但是,非常「哈克」,和最少愉快的方式我可以想像實現這一

## Create a formula for a model with a large number of variables: 
xnam <- paste0("x", 1:25) 
(fmla <- as.formula(paste("y ~ ", paste(xnam, collapse= "+")))) 

也就是說,你只貼上toghether一個字符串,並使用它作爲您的公式之一。