这里只实现了对于离散值来计算的生成的决策树,代码如下:
from math import log
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
def creatDataSet():
dataset = [
['青绿','蜷缩','浊响','清晰','凹陷','硬滑','是'],
['乌黑','蜷缩','沉闷','清晰','凹陷','硬滑','是'],
['乌黑','蜷缩','浊响','清晰','凹陷','硬滑','是'],
['青绿','蜷缩','沉闷','清晰','凹陷','硬滑','是'],
['浅白','蜷缩','浊响','清晰','凹陷','硬滑','是'],
['青绿','稍蜷','浊响','清晰','稍凹','软粘','是'],
['乌黑','稍蜷','浊响','稍糊','稍凹','软粘','是'],
['乌黑','稍蜷','浊响','清晰','稍凹','硬滑','是'],
['乌黑','稍蜷','沉闷','稍糊','稍凹','硬滑','否'],
['青绿','硬挺','清脆','清晰','平坦','软粘','否'],
['浅白','硬挺','清脆','模糊','平坦','硬滑','否'],
['浅白','蜷缩','浊响','模糊','平坦','软粘','否'],
['青绿','稍蜷','浊响','稍糊','凹陷','硬滑','否'],
['浅白','稍蜷','沉闷','稍糊','凹陷','硬滑','否'],
['乌黑','稍蜷','浊响','清晰','稍凹','软粘','否'],
['浅白','蜷缩','浊响','模糊','平坦','硬滑','否'],
['青绿','蜷缩','沉闷','稍糊','稍凹','硬滑','否'],
]
labels = ['色泽','根蒂','敲声','纹理','脐部','触感']
return dataset,labels
def createTree

该博客介绍了如何使用Python实现一个简单的决策树算法。通过`creatDataSet`函数创建了一个数据集,数据集包含了多个特征如色泽、根蒂等,以及对应的分类结果。接着,`createTree`函数用于构建决策树,它通过`chooseBestFeatureToSplit`选择最佳特征进行分裂,并计算熵和信息增益。最后,博客展示了构建完成的决策树结构。
最低0.47元/天 解锁文章
2500

被折叠的 条评论
为什么被折叠?



