如何获取 ROC 曲线中 x 轴(FPR)和 y 轴(TPR)的值
How do I get the values of x-axis(FPR) and y-axis(TPR) in ROC curve
我正在尝试使用 plotly.js
和在 R 中获得的值制作 ROC 曲线。
在plotly
中,我必须填写值(x轴,y轴)才能绘制。
但是,当我使用逻辑回归函数 glm
或 multinom
(在 nnet
包中)时,我不知道如何获取值。
df <- data.frame(age = c(10, 20, 30, 40, 50),height = c(150, 161, 141, 155, 180), house = c("0", "0", "0", "1", "1"))
smp_size <- floor(nrow(df) * (0.6))
train_idx <- sample(seq_len(nrow(df)), size = smp_size)
train <- df[train_idx, ]
validation <- df[-train_idx, ]
validation_x <- validation[c("age", "height")]
validation_y <- validation[["house"]]
m <- glm(house ~ age + height, data = train, family = 'binomial')
y_pred <- predict(m, validation_x)
library(plotROC)
plotROC(validation_y, y_pred)
我想知道如何获取ROC曲线中x轴(FPR)和y轴(TPR)的值
谢谢。
使用包pROC
中的函数roc()
:
# install.packages("pROC")
library(pROC)
my.roc <- roc(validation_y, y_pred)
roc()
returns 记录特异性(x 轴)、敏感性(y 轴)、阈值、AUC 和其他信息的列表。您可以使用 $
来提取它们:
my.roc$specificities
my.roc$sensitivities
我正在尝试使用 plotly.js
和在 R 中获得的值制作 ROC 曲线。
在plotly
中,我必须填写值(x轴,y轴)才能绘制。
但是,当我使用逻辑回归函数 glm
或 multinom
(在 nnet
包中)时,我不知道如何获取值。
df <- data.frame(age = c(10, 20, 30, 40, 50),height = c(150, 161, 141, 155, 180), house = c("0", "0", "0", "1", "1"))
smp_size <- floor(nrow(df) * (0.6))
train_idx <- sample(seq_len(nrow(df)), size = smp_size)
train <- df[train_idx, ]
validation <- df[-train_idx, ]
validation_x <- validation[c("age", "height")]
validation_y <- validation[["house"]]
m <- glm(house ~ age + height, data = train, family = 'binomial')
y_pred <- predict(m, validation_x)
library(plotROC)
plotROC(validation_y, y_pred)
我想知道如何获取ROC曲线中x轴(FPR)和y轴(TPR)的值
谢谢。
使用包pROC
中的函数roc()
:
# install.packages("pROC")
library(pROC)
my.roc <- roc(validation_y, y_pred)
roc()
returns 记录特异性(x 轴)、敏感性(y 轴)、阈值、AUC 和其他信息的列表。您可以使用 $
来提取它们:
my.roc$specificities
my.roc$sensitivities