scikit-learn之决策树可视化
平时我们在用机器学习建模时,往往只是用建模去分析数据,得到结论。但有时,我们也需要一些可视化的东西,比如决策树可视化等。
在Python的机器学习库scikit-learn中,tree类中的export_graphviz()函数就能导出树的可视化结果。下面我们将通过一个简单的例子来展示如何将模型建立的决策树可视化。我们使用的数据是位于E盘中log_reg文件夹下的playTennisTr.csv,数据如下:
Python代码如下:
# import modules import pandas as pd from sklearn import tree import graphviz # read data from other places, e.g. csv # drop_list: variables that are not used def read_data(file_path, drop_list=[]): dataSet = pd.read_csv(file_path,sep=',') for col in drop_list: dataSet = dataSet.drop(col,axis=1) return dataSet # read data in csv format file_path = "E://log_reg/playTennisTr.csv" dataSet = read_data(file_path) target_var = 'PlayTennis' # decision tree with CART in scikit_learn # fit the model by DT in scikit_learn clf = tree.DecisionTreeClassifier() clf = clf.fit(dataSet.iloc[:, 0:-1], dataSet[target_var]) dot_data = tree.export_graphviz(clf, out_file=None, feature_names=dataSet.columns[:-1], # 特征名称 class_names=['No', 'Yes'], # 目标变量的类别名 filled=True, rounded=True, special_characters=True) graph = graphviz.Source(dot_data) graph.render('example.gv', directory='E:\\log_reg', view=True) print('Save example.gv file!\n')
其中,read_data()函数用来读取指定文件路径的csv文件,目标变量为PlayTennis, 该模型生成的决策树模型为clf. 在tree.export_graphviz()中,会生成dot文件,在利用graphviz模块的Source()函数可以将其转化为gv文件,如下图:
对于生成后的gv文件,可以用graphviz软件打开(注意:要将graphviz软件的bin文件添加到系统的环境变量中)。如下:
在graphviz软件中,可以将刚才的gv文件保存为png, jpg, pdf等格式,如下:
我们再去文件夹中查看生成的图片,如下:
这样我们就能获取建模得到的决策树模型的png, jpg, pdf格式,轻松做到了决策树可视化。
本次分享到此结束,欢迎大家交流~~
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
如何租到靠谱的房子?Scrapy爬虫帮你一网打尽各平台租房信息!
又是一年n度的找房高峰期,各种租赁信息眼花缭乱,如何快速、高效的找到靠谱的房子呢? 不堪忍受各个租房网站缭乱的信息,一位技术咖小哥哥最近开发了一个基于 Scrapy 的爬虫项目,聚合了来自豆瓣,链家,58 同城等上百个城市的租房信息,统一集中搜索感兴趣的租房信息,还突破了部分网站鸡肋的搜索功能。 通过这个“秘密武器”,这位技术咖已经使用该爬虫找到合适的住所。 不仅如此,还很无私地整理了项目代码,并放上了Github。 Github链接: https://github.com/kezhenxu94/house-renting 接下来,跟着文摘菌一起来看看这波酷炫的操作。 环境部署 Python版本:Python 2 || Python 3 爬虫框架:Scrapy 操作系统:Mac || Linux || Windows 服务引擎:Docker 获取源码 $
- 下一篇
CentOS7.3安装部署wordpress
CentOS7.3安装部署wordpress Wordpress简介 WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。 WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。搭建环境介绍 地域:华南 1可用区c 实例规格:ecs.sn1ne.large CPU:2核 内存:4 GB 服务器操作系统:操作系统: CentOS 7.4 64位一、 下载配置所需要的安装包 (wordpress mysql) [root@luchao ~]# yum install -y wget [root@luchao /]# wget https://cn.wordpress.org/wordpress-4.8.1-zh_CN.zip [root@luchao /]# wget http://repo.mysql.com/mysql-com...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- 设置Eclipse缩进为4个空格,增强代码规范
- Mario游戏-低调大师作品
- MySQL8.0.19开启GTID主从同步CentOS8
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Redis,开启缓存,提高访问速度