• Python 实现基于信息熵的 ID3 算法决策树模型


    版本说明

    Python version: 3.6.6 |Anaconda, Inc.| (default, Jun 28 2018, 11:21:07) [MSC v.1900 32 bit (Intel)]
    NumPy version:1.17.4
    pandas version:0.25.3
    scikit-learn version:0.19.0
    graphviz version:0.13.2
    scipy version:1.3.3
    matplotlib version:3.1.2
    IPython version:7.10.1

    1、读取数据

    datafile =  r"...sales_data.xls"
    data = pd.read_excel(datafile, header=0, index_col=0)
    data.head(10)

     2、对特征值进行数字编码,提取特征值和类标号

    dt = data.copy()
    dt[(dt == '') | (dt == '')] = 1
    dt[(dt == '') | (dt == '')] = -1
    X = dt.iloc[:, :-1].values.astype(int)
    y = dt.iloc[:, -1].values
    dt.heaad()  # 查看编码效果

    pd.crosstab('', y)    # 查看类比统计

    3、训练模型

    from sklearn.tree import DecisionTreeClassifier as DTC
    dtc = DTC(criterion='entropy')    # 基于信息熵,建立决策树模型
    dtc.fit(X, y)

    4、输出决策树图

    from sklearn.tree import export_graphviz
    import graphviz

    dot_data = export_graphviz(dtc, feature_names=dt.columns[:-1], class_names=['低','高'],
                             filled=True, rounded=True, out_file=f)
    graph = graphviz.Source(dot_data)
    graph

    。。。

  • 相关阅读:
    [python]windows截图
    [python]PyPI使用国内源
    [MySQL]配置多个MySQL服务(Windows)
    [C#]中获取当前程序运行路径的方法
    [C#]统计文本文件txt中的行数(快速读取)
    [C#]获取连接MySql数据库及常用的CRUD操作
    html和css高级
    html和css进阶
    html和css入门
    Git 简介
  • 原文地址:https://www.cnblogs.com/shanger/p/11988821.html
Copyright © 2020-2023  润新知