2

Rで次の形式の式を作成しようとしています

Output~Var1+Var2+Var3

モデルで使用します。動作するように見える方法は、予測したい変数名、チルダ、予測子として使用したい変数名を指定し、その後の引数でそれらの変数の観測を含むデータ フレームを指定することです。ただし、使用しているデータ フレームにはかなりの数の変数が含まれており、すべてを入力する必要はありません。これらの変数の名前も比較的頻繁に変更されるため、コードを変更し続けるのは大変です。本質的に、私は書き方を知りたいです

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

他の変数もいくつか除外する必要がありますが。申し訳ありませんが、何が起こっているのかわかりません。?formula はあまり役に立ちませんでした。これは、以前に見た他のプログラミングや R 構造とは異なります。

助けてくれてありがとう、

N

4

2 に答える 2

5

ああ、私はもっと良い解決策を見つけました: 関数

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

指定した文字列から数式を作成します。モデルで使用する変数を動的に選択するには、必要に応じて列名を操作します。

于 2012-12-23T12:58:28.810 に答える
1

実際、?formula のドキュメントには、考えられる答えの 1 つが示されています。ただし、これは非常に「ハック」であり、これを達成するために想像できる最も不快な方法の 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= "+"))))

つまり、文字列を一緒に貼り付けて、それを数式として使用するだけです。

于 2012-12-23T12:30:00.257 に答える