python的roc曲线与阈值_Roc曲线和切断点.Python

  • Post author:
  • Post category:python


我运行了逻辑回归模型,并对logit值进行了预测.我用它来获得ROC曲线上的点数:

from sklearn import metrics

fpr, tpr, thresholds = metrics.roc_curve(Y_test,p)

我知道metrics.roc_auc_score给出了ROC曲线下的面积.谁能告诉我什么命令会找到最佳截止点(阈值)?

解决方法:

虽然回答很晚,但思想可能会有所帮助.您可以使用R (here!)中的epi软件包来完成此操作,但是我在python中找不到类似的软件包或示例.

最佳截止点是真阳性率高且误报率低的地方.基于这个逻辑,我在下面举了一个例子来找到最佳阈值.

Python代码:

import pandas as pd

import statsmodels.api as sm

import pylab as pl

import numpy as np

from sklearn.metrics import roc_curve, auc

# read the data in

df = pd.read_csv(“http://www.ats.ucla.edu/stat/data/binary.csv”)

# rename the ‘rank’ column because there is also a DataFrame method called ‘rank’

df.columns = [“admit”, “gre”, “gpa”, “prestige”]

# dummify rank

dummy_ranks = pd.get_dummies(df[



版权声明:本文为weixin_30920907原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。