scikit-learn实现决策树并用graphviz/pydotplus实现可视化

1. 用anaconda安装pydotplus

要说一下的是在python3.5以前用pydot。python3.5及以后pydot已经停止开发了,要用pydotplus。此博客用的python3.7版本。
在anaconda中安装pydotplus可能安装不上,如图所示,没办法点击apply安装:
在这里插入图片描述
这时候打开terminal:
在这里插入图片描述
输入pip install pydotplus 和 pip install graphviz
在这里插入图片描述

2. 安装graphviz

官网下载,官网可能会很慢。或者点击这里下载graphviz2.38.msi
安装完成后,在环境变量->系统变量的path中加入graphviz2.38安装的bin文件夹:
在这里插入图片描述
安装完成后一定要重启pycharm,不然仍会提示找不到 GraphViz。,如果不重启的话,可以在代码中通过代码手动加入路径:

import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'

3.代码示例

# 决策树模型
from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier
import io
from sklearn import tree
import pydotplus
# 添加路径,安装好graphviz重启pycharm后不需要这步代码
import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'
# 生成分类数据
x, y = datasets.make_classification(1000, 20, n_informative=3)
# 决策树函数、训练数据
dt = DecisionTreeClassifier()
dt.fit(x, y)
# 可视化决策树
str_buffer = io.StringIO()
tree.export_graphviz(dt, out_file=str_buffer)
graph = pydotplus.graph_from_dot_data(str_buffer.getvalue())
graph.write_jpg('decision_tree.jpg')

得到的decision_tree.jpg如图所示:
在这里插入图片描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

象牙塔小明

您的鼓励是我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值