Сохранение выходных данных для вложенного цикла

#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. Это не так. Это не так.