1
我想根據一個因子是否小於2個級別從公式中刪除一個項目。從小於兩個級別的公式中刪除因子
我的設置是我想爲不同的數據子集運行大量相同的logit模型。問題是,對於某些子集,沒有一些因素可能只有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