实验3:决策树
- 实验目的
了解决策树的构建过程和代码实现,应用决策树解决实际问题。
- 实验准备
安装python和pycharm,了解python基础编程和pycharm使用。
三、实验内容
基于iris数据集,补充完整下面决策树的相关程序,粘贴运行成功的结果截图,并给每行程序添加注释。
实验内容:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
import numpy as np
import matplotlib.pyplot as plt
from collections import Counter
from math import log
from graphviz import Digraph #以上均是导包操作
iris = load_iris() #数据集导入,加载 iris 数据集
x = iris.data
#包括样本的特征 data 里面是花萼长度、花萼宽度、花瓣长度、花瓣宽度的测量数据
y = iris.target
#存储了data中每条记录属于哪一类鸢尾植物 标签(结果)
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=666666)
'''
feature_train, feature_test, target_train, target_test 分别代表训练集特征、测试集特征、训练集目标值、验证集特征。
train_data:待划分样本数据 对应x
train_target:待划分样本数据的结果(标签) 对应y
test_size:测试数据占样本数据的比例,,如果是整数的话就是样本的数量
random_state:设置随机数种子,保证每次都是同一个随机数。若为0或不填,则每次得到数据都不一样
。
'''
#树结构
class Node:
def __init__(self,x_data, y_label, dimension, value):
#创建树的结构