数据分析小练手【1】 之 Iris Data数据集(决策树)

合辑传送门 -->> 数据分析-合辑

Iris Data数据集(花的类别识别)

Iris Data Set可能是模式识别领域学习分类技术最基本入门级的数据集,适合初学者。

该数据集里面包含了150行4列个数据。

问题: 根据已有特征预测花的类别。

资源:https://archive.ics.uci.edu/ml/datasets/Iris?spm=a2c4e.11153940.blogcont603256.5.333b1d6f05ZggC


如果你使用的是sklearn的话也可以通过调用sklearn.datasets.load_iris()加载数据

下面使用的方法是利用决策树进行分类问题求解

import pydot
from sklearn.tree import export_graphviz
from sklearn.tree import DecisionTreeClassifier
#3:1拆分数据集
from sklearn.model_selection import train_test_split
from sklearn import datasets

if __name__ == '__main__':
    cancer = datasets.load_iris()
    print('数据集规格大小',cancer.data.shape)
    print('标签规格大小',cancer.target.shape)
    print('标签有',cancer.target_names)
    print('数据属性有',cancer.feature_names)
    # 参数random_state是指随机生成器,0表示函数输出是固定不变的
    X_train, X_test, y_train, y_test = train_test_split(cancer['data'], cancer['target'], random_state=42)
    tree = DecisionTreeClassifier(random_state=0)
    tree.fit(X_train, y_train)
    print('Train score:{:.3f}'.format(tree.score(X_train, y_train)))
    print('Test score:{:.3f}'.format(tree.score(X_test, y_test)))
    # 生成可视化图
    export_graphviz(tree, out_file="tree.dot", class_names=cancer.target_names, feature_names=cancer.feature_names,
                    impurity=False, filled=True)
    # 展示可视化图
    (graph,) = pydot.graph_from_dot_file('tree.dot')
    graph.write_png('tree.png')

输出结果如下

数据分析小练手【1】 之 Iris Data数据集(决策树)_第1张图片

数据分析小练手【1】 之 Iris Data数据集(决策树)_第2张图片

 

你可能感兴趣的:(数据分析)