前言
决策树理论数据这里不讲,只把我的代码贴出来。代码一部分来源机器学习实战,详细的注释是我自己加的。另一部分源码我自己写的(处理西瓜集的部分),如有错误欢迎指正。
一、使用步骤
1.源码
代码如下(示例):
from math import log
import operator
def convert(filename):
fr = open(filename,encoding="utf-8")
arrayOfLines = fr.readlines()
#print(arrayOfLines)
labels = arrayOfLines[0]
attrubute = labels.strip().split(",")
del(attrubute[0])
del(attrubute[-1])
del(arrayOfLines[0])
fileLineNumber = len(arrayOfLines)
for i in range(fileLineNumber):
arrayOfLines[i] = arrayOfLines[i].strip().split(',')
del(arrayOfLines[i][0])
return arrayOfLines,attrubute
#定义函数CalShannonEnt()用于计算样本空间的信息熵
def calcShannonEnt(dataSet):
numEntries