首先对于ID3决策树我通过看书理解了其思想。
然后经过鱼佬的文章之后我学习了其算法实现。
感觉对代码的理解还是不够,很多地方还是没弄懂,要继续努力!
首先使用数据集
age,work,hourse,loan,class
青年,否,否,一般,否
青年,否,否,好,否
青年,是,否,好,是
青年,是,是,一般,是
青年,否,否,一般,否
中年,否,否,一般,否
中年,否,否,好,否
中年,是,是,好,是
中年,否,是,非常好,是
中年,否,是,非常好,是
老年,否,是,非常好,是
老年,否,是,好,是
老年,是,否,好,是
老年,是,否,非常好,是
老年,否,否,一般,否
处理
import pandas as pd
import numpy as np
import matplotlib as plt
from sklearn import preprocessing
dataset=pd.read_csv('/Users/soushigou/data.csv',encoding='gbk')
dataset.info()
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
#得到变量列表,得到格式为list
cols=dataset.columns.tolist()
cols
#创建obj_vars列表,将描述型变量存入
obj_vars=[]
for col in cols:
if dataset[col].dtype=="object":
obj_vars.append(col)
print(obj_vars)
#将描述变量转化为数值型变量
#将转化为的数据附加到原始数据上
le=preprocessing.LabelEncoder()
for col in