python机器学习实战(二)
2026/9/1 17:24:05 网站建设 项目流程

这个就是将测试合成一个函数,定义为函数

参考代码如下:

1defclassify(inputTree,featLabels,testVec):2firstStr =inputTree.keys()[0]3secondDict =inputTree[firstStr]4featIndex =featLabels.index(firstStr)5key =testVec[featIndex]6valueOfFeat =secondDict[key]7ifisinstance(valueOfFeat, dict):8classLabel =classify(valueOfFeat, featLabels, testVec)9else: classLabel =valueOfFeat10returnclassLabel

这个函数, 是一个依据决策树, 来查明新的测试向量属于哪种类型的函数, 这还是一个递归函数, 就拿上面决策树的结果来讲。

这是我们的, 首先通过函数的第一句话, 得到它的第一个, 也就是‘no ’, 将其赋给‘no ’的值, 即{0: 'no', 1: {'': {0: 'no', 1: 'yes'}}}, 然后用index函数找到标号, 结果应为0, 依据下标把测试向量的值赋给key, 接着找到对应中的值, 这里有个函数, 其功能是若第一个参数的类型等于后面参数的类型, 就返回true, 否则返回false, 列表第一位是1, 则的值是{0: 'no', 1: 'yes'}, 若是dict, 则递归调用这个函数, 再进行, 直至不是字典, 这便是最后的结果, 实际上就是将决策树过一遍, 找到对应的而已。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询