在 glm r 中定义目标变量

define target variable in glm r

我希望能够在下面的回归代码之外定义我的目标变量'def_target':

model1 <- glm(def_target~., family=binomial(link='logit'),data=train70)

我尝试了以下操作,但弹出错误消息

tv1 <- 'def_target' 
model1 <- glm(tv1~., family=binomial(link='logit'),data=train70)

如果有人能帮助我那就太好了。

谢谢

我认为它可能会倾斜,因为您在模型 1 中告诉它:glm(tv1~., family=binomial(link='logit'),data=train70)。 train70 没有匹配的列。尝试直接分配变量,即

tv1 <- train70[['def_target']]

然后

model1 <- glm(tv1~., family=binomial(link='logit'))

我必须承认我对“.”并不熟悉。你在那里。但请确保将其与您的原始数据集相关联,就像您对 tv1 所做的那样。

glm() 要求第一个参数是 class "forumla",简单地插入一个字符串(即 'def_target')将无法正确解析。您需要使用 as.formula() 将参数转换为公式,但必须包括您要使用的整个公式。这是有效的代码:

model1 <- glm(as.formula(paste(tv1," ~ .")), family=binomial(link='logit'), data=train70)