Логистическая регрессия - определение контрольного уровня в R

Я схожу с ума, пытаясь понять это. Как я могу в R, определить опорный уровень для использования в двоичной логистической регрессии? Как насчет полиномиальной логистической регрессии? Прямо сейчас мой код:

logistic.train.model3 <- glm(class~ x+y+z,
                         family=binomial(link=logit), data=auth, na.action = na.exclude)

моя переменная ответа "ДА" и "НЕТ". Я хочу предсказать вероятность того, что кто-то ответит "ДА".

Я не хочу перекодировать переменную в 0 / 1. Есть ли способ, которым я могу сказать модели прогнозировать "ДА"?

Спасибо за помощь.

2 ответа

Решение

Предполагая, что вы сохранили класс как фактор, используйте relevel() функция:

auth$class <- relevel(auth$class, ref = "YES")

Обратите внимание, что при использовании auth$class <- relevel(auth$class, ref = "YES"), вы на самом деле предсказываете "НЕТ".

Чтобы предсказать "ДА", опорный уровень должен быть "НЕТ". Поэтому вы должны использовать auth$class <- relevel(auth$class, ref = "NO"),

Это распространенная ошибка, которую делают люди, так как в большинстве случаев их переменная является вектором 0 а также 1и люди хотят предсказать 1,

Но когда такой вектор рассматривается как фактор-переменная, опорный уровень 0 (см. ниже), чтобы люди могли эффективно прогнозировать 1, Аналогично, ваш контрольный уровень должен быть "НЕТ", чтобы вы могли предсказать "ДА".

set.seed(1234)
x1 <- sample(c(0, 1), 50, replace = TRUE)
x2 <- factor(x1)
str(x2)
#Factor w/ 2 levels "0","1": 1 2 2 2 2 2 1 1 2 2 ...You can see that reference level is 0
Другие вопросы по тегам