from math import log
def createDataSet(): %创建数据集
dataSet = [[1, 1, 'yes'],
[1, 1, 'yes'],
[1, 0, 'no'],
[0, 1, 'no'],
[0, 1, 'no']]
labels = ['no surfacing','flippers']
return dataSet, labels
def calcShannonEnt(dataSet): %计算香农熵
numEntries = len(dataSet) %numEntries =5
labelCounts = {} %空的字典
for featVec in dataSet:
currentLabel = featVec[-1] %比如第一次循环,currentLabel = 'yes'
if currentLabel not in labelCounts.keys():
labelCounts[currentLabel] = 0
labelCounts[currentLabel] += 1
shannonEnt = 0.0
for
机器学习实战 第三章:决策树
最新推荐文章于 2021-10-23 21:34:42 发布