决策树是什么?决策树(decision tree)是一种基本的分类与回归方法。举个通俗易懂的例子,流程图就是一种决策树。
有没有车,没车的话有没有房,没房的话有没有存款,没存款pass。这个流程就是一个简单的决策树。
分类决策树模型是一种描述对实例进行分类的树形结构。通过很多次判断来决定是否符合某类的特征。
数据集
首先附上数据集:
链接:https://pan.baidu.com/s/1bFDGa7E6lnuHOQpb1KCDSQ
提取码:exxv
#load the data
import pandas as pd
import numpy as np
data = pd.read_csv('./iris_data.csv')
data.head()
数据集有3类花,每种花有4个特征。把4个特征投影到二维平面可以很清楚看出。setosa与其余两种鸢尾花有明显的边界,而versicolor和virginica这两种花具有相似的特征,看起来有些重叠。
如果是人为判断的话,我们可以这样想,setosa与其余两种花区别最大的特征就作为第一个分叉。
如果满足那么全是setosa,不满足则是其余2种,则再进行判断。
那么决策树会不会和我们想的一样呢?
实战
X = data.drop(['target','label'],axis=1)
y = data.loc[:,'label']
print(X.shape,y.shape