我想将逻辑回归中 ROC 的最佳截止点作为一个数字而不是两条交叉曲线。使用下面的代码,我可以获得显示最佳点的图,但在某些情况下,我只需要将该点作为可以用于其他计算的数字。以下是代码行:
library(Epi)
ROC( form = IsVIP ~ var1+var2+var3+var4+var5, plot="sp", data=vip_data )
谢谢
根据文档,最佳截止点定义为灵敏度 + 特异性最大的点(请参阅MX
中的论点?ROC
)。您可以按如下方式获取相应的值(请参见 中的示例?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]
这是您运行时将显示的点
ROC(form = y ~ x + z, plot = "ROC", MX = TRUE)