利用python画出AUC曲线的实例


Posted in Python onFebruary 28, 2020

以load_breast_cancer数据集为例,模型细节不重要,重点是画AUC的代码。

直接上代码:

from sklearn.datasets import load_breast_cancer
from sklearn import metrics
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
import pylab as plt
import warnings;warnings.filterwarnings('ignore')
dataset = load_breast_cancer()
data = dataset.data
target = dataset.target
X_train,X_test,y_train,y_test = train_test_split(data,target,test_size=0.2)
rf = RandomForestClassifier(n_estimators=5)
rf.fit(X_train,y_train)
pred = rf.predict_proba(X_test)[:,1]
#############画图部分
fpr, tpr, threshold = metrics.roc_curve(y_test, pred)
roc_auc = metrics.auc(fpr, tpr)
plt.figure(figsize=(6,6))
plt.title('Validation ROC')
plt.plot(fpr, tpr, 'b', label = 'Val AUC = %0.3f' % roc_auc)
plt.legend(loc = 'lower right')
plt.plot([0, 1], [0, 1],'r--')
plt.xlim([0, 1])
plt.ylim([0, 1])
plt.ylabel('True Positive Rate')
plt.xlabel('False Positive Rate')
plt.show()

利用python画出AUC曲线的实例

补充拓展:Python机器学习中的roc_auc曲线绘制

废话不多说,直接上代码

from sklearn.metrics import roc_curve,auc

from sklearn.ensemble import RandomForestClassifier

import matplotlib.pyplot as plt

from sklearn.model_selection import train_test_split

x_train,y_train,x_test,y_test=train_test_split(x,y,test_size=0.2)

rf=RandomForestClassifier()

rf.fit(x_train,y_train)

rf.score(x_train,y_train)

print('trainscore:'+str(rfbest.score(x_train,y_train)))
print('testscore:'+str(rfbest.score(x_test,y_test)))

y_score=rfbest.fit(x_train,y_train).predict_proba(x_test) #descision_function()不可用

print(type(y_score))

fpr,tpr,threshold=roc_curve(y_test,y_score[:, 1])
roc_auc=auc(fpr,tpr)
plt.figure(figsize=(10,10))
plt.plot(fpr, tpr, color='darkorange',
lw=2, label='ROC curve (area = %0.2f)' % roc_auc) ###假正率为横坐标,真正率为纵坐标做曲线
plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--')
plt.xlim([0.0, 1.0])
plt.ylim([0.0, 1.05])
plt.xlabel('False Positive Rate')
plt.ylabel('True Positive Rate')
plt.title('Receiver operating characteristic example')
plt.legend(loc="lower right")
plt.show()

以上这篇利用python画出AUC曲线的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现进程间通信简单实例
Jul 23 Python
独特的python循环语句
Nov 20 Python
详解Python3操作Mongodb简明易懂教程
May 25 Python
Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)
Jul 06 Python
Python决策树和随机森林算法实例详解
Jan 30 Python
python中数据爬虫requests库使用方法详解
Feb 11 Python
python+selenium打印当前页面的titl和url方法
Jun 22 Python
python3 对list中每个元素进行处理的方法
Jun 29 Python
解决Python下json.loads()中文字符出错的问题
Dec 19 Python
python3 requests库文件上传与下载实现详解
Aug 22 Python
Python中Selenium对Cookie的操作方法
Jul 09 Python
聊聊基于pytorch实现Resnet对本地数据集的训练问题
Mar 25 Python
Python编程快速上手——选择性拷贝操作案例分析
Feb 28 #Python
AUC计算方法与Python实现代码
Feb 28 #Python
Python编程快速上手——Excel表格创建乘法表案例分析
Feb 28 #Python
Python计算IV值的示例讲解
Feb 28 #Python
Python编程快速上手——PDF文件操作案例分析
Feb 28 #Python
Python自动采集微信联系人的实现示例
Feb 28 #Python
python代码实现TSNE降维数据可视化教程
Feb 28 #Python
You might like
新安装的MySQL数据库需要注意的安全知识
2008/07/30 PHP
PHP 日期时间函数的高级应用技巧
2009/10/10 PHP
PHP获取http请求的头信息实现步骤
2012/12/16 PHP
php通过Chianz.com获取IP地址与地区的方法
2015/01/14 PHP
php简单获取复选框值的方法
2016/05/11 PHP
学习PHP session的传递方式
2016/06/15 PHP
JavaScript DOM 学习第三章 内容表格
2010/02/19 Javascript
Js 弹出框口并返回值的两种常用方法
2010/12/30 Javascript
javascript+xml实现简单图片轮换(只支持IE)
2012/12/23 Javascript
解析使用js判断只能输入数字、字母等验证的方法(总结)
2013/05/14 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
使用jQuery和PHP实现类似360功能开关效果
2014/02/12 Javascript
JS简单编号生成器实现方法(附demo源码下载)
2016/04/05 Javascript
JavaScript中无法通过div.style.left获取值的解决方法
2017/02/19 Javascript
详解Vue.use自定义自己的全局组件
2017/06/14 Javascript
jquery.validate.js 多个相同name的处理方式
2017/07/10 jQuery
Vue shopCart 组件开发详解
2018/01/26 Javascript
深入理解使用Vue实现Context-Menu的思考与总结
2019/03/09 Javascript
vue多层嵌套路由实例分析
2019/03/19 Javascript
[01:08:48]LGD vs OG 2018国际邀请赛淘汰赛BO3 第三场 8.25
2018/08/29 DOTA
python计算书页码的统计数字问题实例
2014/09/26 Python
Python基于有道实现英汉字典功能
2015/07/25 Python
Python实现简单登录验证
2016/04/13 Python
Python cookbook(数据结构与算法)让字典保持有序的方法
2018/02/18 Python
你可能不知道的Python 技巧小结
2020/01/29 Python
解决python3输入的坑——input()
2020/12/05 Python
美国领先的奢侈美容零售商:Bluemercury
2017/07/26 全球购物
介绍Ibatis的核心类
2013/11/18 面试题
会计岗位描述
2014/02/22 职场文书
信息总监管理职责范本
2014/03/08 职场文书
动员大会主持词
2014/03/20 职场文书
拓展训练激励口号
2014/06/17 职场文书
教师工作自我鉴定范文
2014/09/14 职场文书
农村环境卫生倡议书
2015/04/29 职场文书
董事长秘书工作总结
2015/08/14 职场文书
python利用pandas分析学生期末成绩实例代码
2021/07/09 Python