【发布时间】:2021-11-09 08:27:02
【问题描述】:
我有以下概念性问题,我无法理解。
以下是调查数据示例,其中我有一个时间列,指示某人需要多长时间才能回答某个问题。
现在,我感兴趣的是清洁量将如何根据此阈值发生变化,即如果我增加阈值会发生什么,如果我降低它会发生什么。
所以我的想法是创建一条 ROC 曲线(或其他模型指标),以获得关于潜在阈值的视觉提示。问题是我没有类似机器学习的模型来给我分类概率。所以我想知道是否有任何方法可以使用这种类型的数据创建 ROC 曲线。我的想法是在大约 100 个不同的阈值处循环遍历我的数据,计算每个阈值的假阳性率和真阳性率,然后做一个简单的线图,但我希望有一个更优雅的解决方案,不需要我循环.
有什么想法吗?
示例数据:
-
time列表示每个案例所需的时间 -
truth列表示我想要比较的当前决定 -
predicted列表示我是否会在时间阈值2.5s进行切割时的清洁决定。这是我需要更改/循环的内容。
set.seed(3)
df <- data.frame(time = c(2.5 + rnorm(5), 3.5 + rnorm(5)),
truth = rep(c("cleaned", "final"), each = 5)) %>%
mutate(predicted = if_else(time < 2.5, "cleaned", "final"))
【问题讨论】:
-
因为您需要计算每个阈值的 ROC 点,所以除了循环的某些变体之外,我没有看到其他选择。
标签: r classification roc