それぞれを完全に指定せずに、特定の変数を glm 回帰に強制したいと思います。私の実際のデータセットには、約 200 個の変数があります。これまでのオンライン検索では、このサンプルを見つけることができませんでした。
例 (3 つの変数のみ):
n=200
set.seed(39)
samp = data.frame(W1 = runif(n, min = 0, max = 1), W2=runif(n, min = 0, max = 5))
samp = transform(samp, # add A
A = rbinom(n, 1, 1/(1+exp(-(W1^2-4*W1+1)))))
samp = transform(samp, # add Y
Y = rbinom(n, 1,1/(1+exp(-(A-sin(W1^2)+sin(W2^2)*A+10*log(W1)*A+15*log(W2)-1+rnorm(1,mean=0,sd=.25))))))
すべての主要な用語を含めたい場合、これには簡単なショートカットがあります。
glm(Y~., family=binomial, data=samp)
しかし、すべての主要な用語 (W1、W2、および A) と W2^2 を含めたいとします。
glm(Y~A+W1+W2+I(W2^2), family=binomial, data=samp)
これにはショートカットがありますか?
[公開前に自分自身を編集:] これは機能します!glm(formula = Y ~ . + I(W2^2), family = binomial, data = samp)
さて、これはどうですか!
主要な用語変数を 1 つ省略し、2 つの主要な用語 (A、W2) と W2^2 および W2^2:A のみを含めたいと考えています。
glm(Y~A+W2+A*I(W2^2), family=binomial, data=samp)
明らかに、変数がわずかしかない場合は近道は必要ありませんが、私は高次元のデータを扱っています。現在のデータセットには 200 個の変数しかありませんが、他のいくつかの変数には何千もの変数があります。