#r
#r
Вопрос:
Я пытаюсь выполнить вложенный цикл для логистической регрессии.
Я пытаюсь запустить цикл для значения дискретизации и для каждого класса. Пока что это код… Я не могу получить выходные данные для каждой отдельной итерации.
class <- c(1,2,3,4,5)
discretization_value <- seq(0.25, 0.75, by =0.05)
output<-data.frame(matrix(nrow=500, ncol=5))
names(output)=c("discretization_value", "class", "var1_coef", "var2_coef", "var3_coef")
for (i in discretization_value){
for (j in class) {
df$discretization_value <- ifelse(df$score >= i,1,0)
result <- (glm(discretization_value ~
var1 var2 var3,
data = df[df$class == j,], family= "binomial"))
output[i,1] <- i
output[i,2] <- j
output[i,3] <- coef(summary(result))[c("var1"),c("Estimate")]
output[i,4] <- coef(summary(result))[c("var2"),c("Estimate")]
output[i,5] <- coef(summary(result))[c("var3"),c("Estimate")]
}
}
фрагмент моего df
class score var1 var2 var3
1 0.3 0.18 0.33 356
1 0.5 0.22 0.55 33
1 0.6 0.77 0.44 35
2 0.9 0.99 0.55 2
3 0 0 0 0
3 0.4 0.5 0.11 5
4 0 0.6 0 7
4 0 0.6 0 9
4 0.6 0.2 0.1 6
Комментарии:
1. не могли бы вы добавить
df
?
Ответ №1:
Может ли это быть проблемой? data = df[df$ class == j,], family= «биномиальный»))
Я бы попытался убрать запятую перед квадратной скобкой.
Комментарии:
1. Это не так. Это не так.