How can I get The optimal cutoff point of the ROC in logistic regression as a number

你。 提交于 2019-11-29 09:34:19

问题


I would like to get the optimal cut off point of the ROC in logistic regression as a number and not as two crossing curves. Using the code below I can get the plot that will show the optimal point but in some cases I just need the point as a number that I can use for other calculations. Here are the code lines:

library(Epi)
ROC( form = IsVIP ~ var1+var2+var3+var4+var5, plot="sp", data=vip_data ) 

Thanks


回答1:


As per documentation the optimal cut-off point is defined as the point where Sensitivity + Specificity is maximal (see MX argument in ?ROC). You can get the according values as follows (see example in ?ROC):

x <- rnorm(100)
z <- rnorm(100)
w <- rnorm(100)
tigol <- function(x) 1 - (1 + exp(x))^(-1)
y <- rbinom(100, 1, tigol(0.3 + 3*x + 5*z + 7*w))
rc <- ROC(form = y ~ x + z, plot="sp") 
## optimal combination
opt <- which.max(rowSums(rc$res[, c("sens", "spec")]))
## optimal cut-off point 
rc$res$lr.eta[opt]

This is the point that will be shown when you run

ROC(form = y ~ x + z, plot = "ROC", MX = TRUE)


来源:https://stackoverflow.com/questions/23131897/how-can-i-get-the-optimal-cutoff-point-of-the-roc-in-logistic-regression-as-a-nu

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!