'''
Created on Jan 30, 2015
@author: 史帅
'''
from math import log
import operator
import re
def fileToDataSet(fileName):
'''
此方法功能是:从文件中读取样本集数据,样本数据的格式为:数据以空白字符分割,最后一列为类标签
参数:
fileName:存放样本集数据的文件路径
返回值:
dataSet:样本集数据组成的二维数组
'''
file=open(fileName, mode='r')
lines=file.readlines()
dataSet=[]
index=0
p=re.compile(r"\s+")
for line in lines:
line=p.split(line.strip())
dataSet.append(line)
index+=1
return dataSet
def calculateShannonEntropy(dataSet):
'''
此方法功能是:计算样本集数据类别的信息熵,样本数据的格式为二维数组
参数:
dataSet:样本集数据组成的二维数组
返回值:
shannonEntropy:样本集数据类别的信息熵
'''
dataCount=len(dataSet)
classCountDic={}
for data in dataSet:
【机器学习】决策树-ID3算法的Python实现
最新推荐文章于 2023-07-17 16:41:01 发布
本文详细介绍了如何使用Python实现ID3决策树算法,包括从文件中读取数据集、计算信息熵、选择最佳分割特征以及构建决策树的过程。通过示例代码展示了如何对数据进行分类。
摘要由CSDN通过智能技术生成