分类算法之决策树

来源:hongweipeng链接:

https://www.hongweipeng.com/index.php/archives/1384/

起步

在《分类算法之决策树(理论篇)》我们介绍了决策树的构建和一些关于熵的计算方法,这篇文章将根据一个例子,用代码上来实现决策树。

实验环境

操作系统: win10 64

编程语言: Python3.6

用到的第三方模块有:

数据源

为了方便理解和架设,我们用理论篇中买电脑的例子:

将这些记录保存成 文件:

这些数据就是这次应用的数据源。

数据整理

可以利用python标准库中 来对这个数据源进行读取,要对原始数据集进行整理,随机变量放在一个数组,分类结果放在另一个数组,形如:

按照这个思路我们构造一下:

随机变量向量化

在 提供的库中,对输入的特征有一定的要求,所有特征和分类都要是数值型的值,不能是例子中的类别的值。

怎么转化呢?比方说 这个特征,它有三个值: , , 。有一条记录的 针对这个特征我们就变成:

那么第一条记录 转化为:

特征向量化

分类结果向量化

构造决策树

在 中提供了多种决策树构建方法,这边需要向其表明,是依据 的方式来构造决策树的,因此需要传入一个参数 :

保存模型

将训练好的模型保存到文件里去:

测试数据

接下来就是给它随机变量,让决策树来进行分类。我们修改第一条记录来进行测试:

模型可视化

转化 文件至 可视化决策树的命令:

得到一个pdf文件,打开可以看到决策树:

附录

本次应用的全部代码:

看完本文有收获?请转发分享给更多人

关注「Python那些事」,做全栈开发工程师

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20171213B03TO000?refer=cp_1026

扫码关注云+社区