ファクタが2レベル未満かどうかに基づいて式からタームを削除したいと考えています。2レベル未満の場合の式からのドロップファクタ
私の設定では、データのサブセットごとに同じロジットモデルを多数実行したいと考えています。問題は、一部のサブセットでは、一部の要因では1つの値しか取れないことです。ここ
は一例であり:
depvar <- sample(0:1, 100, replace=T)
bin1 <- rep(1, 100)
cont1 <- rnorm(100)
df <- data.frame(depvar=depvar, bin1=bin1, cont1=cont1)
formla <- as.formula("depvar ~ bin1 + cont1")
logit.reg <- glm(formla, data=df, family=binomial(link=logit))
私はそれが唯一の値をとるときに何とか自動的 式からbin1
をドロップできるようにしたいです。
入れこのようなものは、as.formula(paste0( "depvar〜"、if(length(levels(bin1)) "bin1 +" else ""、cont1 "))'のようになります。ここで、 'bin1'は連続変数であるため、レベルはありませんが、' bin1 = as.factor(bin1) 'で変更することができます。 – FisherDisinformation