У нас є дані з бінарним результатом і деякими коваріатами. Я використовував логістичну регресію для моделювання даних. Просто простий аналіз, нічого надзвичайного. Кінцевим результатом має бути крива доза-відповідь, де ми показуємо, як змінюється ймовірність для конкретного коваріату. Щось на зразок цього:
Ми отримали певну критику від внутрішнього рецензента (не чистого статистичного персонажа) за вибір логістичної регресії. Логістична регресія передбачає (або визначає), що точка перегину кривої S у формі шкали ймовірності становить вірогідність 0,5. Він стверджував, що не було б причин вважати, що точка перегину дійсно є ймовірністю 0,5, і ми повинні вибрати іншу модель регресії, яка дозволяє точці перегину змінюватись так, що фактична позиція визначається на основі даних.
Спочатку мене зловили його аргументи, оскільки я ніколи не замислювався над цим питанням. У мене не було аргументів, чому було б обґрунтовано вважати, що точка перегину становить 0,5. Провівши деякі дослідження, я все ще не маю відповіді на це питання.
Я зіткнувся з 5-параметричною логістичною регресією, для якої точка перегину є додатковим параметром, але, здається, ця модель регресії зазвичай використовується при формуванні кривих доза-відповідь з постійним результатом. Я не впевнений, чи можна і як це можна поширити на змінні бінарних відповідей.
Я думаю, моє головне питання - чому або коли нормально вважати, що точка перегину для логістичної регресії дорівнює 0,5? Це навіть має значення? Я ніколи не бачив, щоб хтось відповідав на логістичну регресійну модель і явно обговорював питання точки перегину. Чи існують альтернативи для створення кривої реакції на дозу, де точка перегину не обов'язково становить 0,5?
Просто для повноти - код R для створення наведеної картини:
dat <- read.csv("http://www.ats.ucla.edu/stat/data/binary.csv")
dat$rank <- factor(dat$rank)
logit <- glm(admit ~ gre + gpa + rank, family = binomial(link = "logit"), data = dat)
newdata <- data.frame(gre = seq(-2000,8000,1), gpa = 2.5, rank = factor(1,c(1,2,3,4)))
pp <- predict(logit, newdata, type = "response", se.fit = TRUE)
plot(newdata$gre, pp$fit, type="l", col="black", lwd=2,ylab="Probability", xlab="Dose")
Редагувати 1:
На додаток до того, що Скортчі сказав в одному з коментарів: Рецензент дійсно стверджував, що біологічно може бути ймовірніше, що зміна кривизни відбудеться раніше ніж на 0,5. Тому його опір проти припущення, що точка перегину знаходиться на рівні 0,5.
Редагувати 2:
Як реакція на коментар Френка Харрелла:
Наприклад, я змінив свою модель вище, щоб включити квадратичний і кубічний термін gre
(що є "дозою" в цьому прикладі).
logit <- glm(admit ~ gre+I(gre^2)+I(gre^3)+ gpa + rank, family = binomial(link = "logit"), data = dat)
newdata <- data.frame(admit=1, gre = seq(-2000,8000,1), gpa = 2.5, rank = factor(1,c(1,2,3,4)))
pp <- predict(logit, newdata, type = "response", se.fit = TRUE)
plot(newdata$gre, pp$fit, type="l", col="black", lwd=2,xlim=c(-2000,4000),ylab="Probability", xlab="Dose")
Незважаючи на те, що gre
в цьому випадку, мабуть, не має сенсу додавати квадратичний і кубічний термін, ми бачимо, що форма кривої дози та відповіді змінилася. Дійсно, зараз ми маємо дві точки перегину приблизно в 0,25 і близько 0,7.