frameon = False将隐藏坐标轴 createPlot.ax1 = plt.subplot(111, frameon = False) #plotTree.totalW是决策树的叶子树,也代表宽度,plotTree.totalD是决策树的深度 plotTree.totalW = float(getNumleafs(inTree)) plotTree.totalD = float(getTreeDepth(inTree)) plotTree.xOff = -0.5/plotTree.totalW; p...
必须知道有多少个叶节点,以便可以正确确定x轴的长度;还需要知道树有多少层,以便可以正确确定y轴的高度。这里定义两个新函数getNumLeafs()和getTreeDepth(),来获取叶节点的数目和树的层数,如下代码所示,将下面两个函数添加到文件treePlotter.py中。 ##获取叶节点的数目和树的层数 def getNumLeafs(myTree): numLea...
decision_tree_ID3.py #导入库importcsvimportmathimportoperatorimporttreePlotter#导入数据集defreadDataset(file_path,file_mode): allElectronicsData=open(file_path, file_mode) reader=csv.reader(allElectronicsData)#读取特征名称headers =next(reader)#读取测试数据集dataset =[]forrowinreader: dataset.append(ro...
/home/fangyang/桌面/machinelearninginaction/Ch03 importtreePlotter myTree=treePlotter.retrieveTree(0) treePlotter.createPlot(myTree) 改变标签,重新绘制图形 myTree['no surfacing'][3] ='maybe'treePlotter.createPlot(myTree) 至此,用matplotlib画决策树到此结束。 3 使用决策树预测眼睛类型 # 隐形眼镜数据集...
treePlotter.py如下: 12 createPlot.ax1.annotate(nodeTxt,xy=parentPt,xycoords='axes fraction',xytext=centerPt,textcoords='axes fraction',va="center",ha="center",bbox=nodeType,arrowprops=arrow_args) 13 defcreatePlot(): lenses.txt如下:
** 6. 可视化决策树的结果: ** 代码语言:javascript 代码运行次数:0 运行 AI代码解释 dataSet,labels=createDataSet()labels_tmp=labels[:]desicionTree=createTree(dataSet,labels_tmp)treePlotter.createPlot(desicionTree)
运行环境:Pyhton3,需要第三方库treePlotter模块(画图所需,不画图可不必)和matplotlib(如果使用上面的模块必须)的支持,请注意安装`!!!安装的教程在请看之前的文章或者去python社区或者参考其他博文。 c4.5算法计算的流程框图 样本数据 训练数据集: outlook temperature humidity windy --- sunny hot high false N sunny...
资源中包含完整的C4.5决策树算法Python代码和测试数据,其中有4个文件:C45.py是算法的实现代码,treePlotter.py是绘制决策树代码,PlayData.txt是样本数据,C45test.py用来构建、绘制并测试决策树,您可以运行该文件来依次进行决策树的构建、剪枝、绘制树型图,并对测试样本进行分类。
1 计算给定数据集的⾹农熵2 from math importlog3 importoperator4 importtreePlotter567 defcalcShannonEnt(dataSet):8 #计算数据集的实例总数9 numEntries =len(dataSet)10 labelCounts ={}11 #创建⼀个字典,他的键值是最后⼀列的数值,如果当前键值不...
⼀、代码涉及基本知识 1、 为了绘图⽅便,引⼊了⼀个第三⽅treePlotter模块进⾏图形绘制。该模块使⽤⽅法简单,调⽤模块createPlot接⼝,传⼊⼀个树型结构 对象,即可绘制出相应图像。 2、 在python中,如何定义⼀个树型结构对象 可以使⽤了python⾃带的字典数据类型来定义⼀个树型对象。