我希望能够在下面的回归代码之外定义目标变量'def_target':
model1 <- glm(def_target~., family=binomial(link='logit'),data=train70)
我尝试过以下操作但弹出错误
tv1 <- 'def_target'
model1 <- glm(tv1~., family=binomial(link='logit'),data=train70)
如果有人能帮助我那会很棒。
由于
答案 0 :(得分:0)
我认为这可能会导致你在模特1中告诉它:glm(tv1~., family=binomial(link='logit'),data=train70)
。 train70没有匹配的列。尝试直接分配您的变量,即
tv1 <- train70[['def_target']]
然后
model1 <- glm(tv1~., family=binomial(link='logit'))
我必须承认我不熟悉“。”你在那里。但请确保将其与原始数据集相关联,就像使用tv1一样。
答案 1 :(得分:0)
glm()
要求第一个参数为“forumla”类,只是插入一个字符串(即'def_target'
)将无法正确解析。您需要使用as.formula()
将参数转换为公式,但必须包含要使用的整个公式。这是有效的代码:
model1 <- glm(as.formula(paste(tv1," ~ .")), family=binomial(link='logit'), data=train70)