目录
一、基础理论
决策树思想:
程序设计中的条件分支结构是if-else分支结构,最早的决策树就是利用这类结构分割数据。
目的:找到最高效的决策顺序。
二、决策树分类鸢尾花
API
sklearn.tree.DecisionTreeClassifier
1、读取数据
# 1、获取数据集
iris = load_iris()
2、划分数据集
# 2、划分数据集
train_data, test_data, train_target, test_target = train_test_split(iris.data, iris.target)
3、创建决策树预估器,训练
# 3、决策树预估器,训练
estimator = DecisionTreeClassifier()
estimator.fit(train_data, train_target)
4、模型评估
方法一:比对法
# 方法一:比对法
predict = estimator.predict(test_data)
print(predict == test_target)
方法二:计算错误率
# 方法二:计算错误率
score = estimator.score(test_data, test_target)
print('分类错误率:', score)
代码
# 决策树分类鸢尾花
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.tree import export_graphviz
# 1、获取数据集
iris = load_iris()
# 2、划分数据集
train_data, test_data, train_target, test_target = train_test_split(iris.data, iris.target)
# 3、决策树预估器,训练
estimator = DecisionTreeClassifier()
estimator.fit(train_data, train_target)
# 4、模型评估
# 方法一:比对法
predict = estimator.predict(test_data)
print(predict == test_target)
# 方法二:计算错误率
score = estimator.score(test_data, test_target)
print('分类正确率:', score)