Chúng tôi có dữ liệu với kết quả nhị phân và một số đồng biến. Tôi đã sử dụng hồi quy logistic để mô hình hóa dữ liệu. Chỉ cần một phân tích đơn giản, không có gì bất thường. Đầu ra cuối cùng được cho là một đường cong phản ứng liều trong đó chúng tôi chỉ ra cách xác suất thay đổi cho một hiệp phương cụ thể. Một cái gì đó như thế này:
Chúng tôi đã nhận được một số lời chỉ trích từ một nhà phê bình nội bộ (không phải là một nhà thống kê thuần túy) vì đã chọn hồi quy logistic. Hồi quy logistic giả định (hoặc xác định) rằng điểm uốn của đường cong hình chữ S trên thang xác suất là xác suất 0,5. Ông lập luận rằng sẽ không có lý do nào để cho rằng điểm uốn thực sự có xác suất 0,5 và chúng ta nên chọn một mô hình hồi quy khác cho phép điểm uốn thay đổi sao cho vị trí thực tế được điều khiển dữ liệu.
Lúc đầu, tôi đã mất cảnh giác bởi lập luận của anh ấy, vì tôi chưa bao giờ nghĩ về điểm này. Tôi không có bất kỳ lý lẽ nào về lý do tại sao nó sẽ hợp lý khi cho rằng điểm uốn là 0,5. Sau khi thực hiện một số nghiên cứu, tôi vẫn chưa có câu trả lời cho câu hỏi này.
Tôi đã tìm thấy hồi quy logistic 5 tham số, trong đó điểm uốn là một tham số bổ sung, nhưng dường như mô hình hồi quy này thường được sử dụng khi tạo ra các đường cong phản ứng liều với kết quả liên tục. Tôi không chắc chắn nếu và làm thế nào nó có thể được mở rộng cho các biến phản ứng nhị phân.
Tôi đoán câu hỏi chính của tôi là tại sao hoặc khi nào thì ổn khi cho rằng điểm uốn của hồi quy logistic là 0,5? Nó thậm chí còn quan trọng? Tôi chưa bao giờ thấy bất kỳ ai phù hợp với mô hình hồi quy logistic và thảo luận rõ ràng về vấn đề của điểm uốn. Có những lựa chọn thay thế cho việc tạo đường cong phản ứng liều trong đó điểm uốn không nhất thiết phải ở mức 0,5?
Để hoàn thiện, mã R để tạo hình trên:
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")
Chỉnh sửa 1:
Chỉ cần thêm vào những gì Scortchi đã nói trong một trong những bình luận: Người đánh giá thực sự đã lập luận rằng về mặt sinh học, nhiều khả năng sự thay đổi độ cong xảy ra sớm hơn 0,5. Do đó, sức đề kháng của anh ta chống lại giả định rằng điểm uốn là 0,5.
Chỉnh sửa 2:
Như một phản ứng với bình luận của Frank Harrell:
Ví dụ, tôi đã sửa đổi mô hình của mình ở trên để bao gồm một thuật ngữ bậc hai và một khối trong gre
(đó là "liều" trong ví dụ này).
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")
Mặc dù thực tế có lẽ không có ý nghĩa khi thêm một bậc hai và một gre
thuật ngữ bậc ba trong trường hợp này, chúng tôi thấy rằng hình thức của đường cong phản ứng liều đã thay đổi. Thật vậy, bây giờ chúng ta có hai điểm uốn ở khoảng 0,25 và gần 0,7.