2012-12-23 97 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一个字符串,并使用它作为您的公式之一。