• 数据挖掘之DecisionTreeClassifier决策树


    用决策树DecisionTreeClassifier的数据挖掘算法来通过三个参数,Pclass,Sex,Age,三个参数来求取乘客的获救率。

    分为三大步:

    一,创建决策树DecisionTreeClassifier 对象

    二,对象调用fit()函数,训练数据,建立模型

    三,对象调用predict()函数,对需要预测的数据,预测。

    代码如下:

    
    
    import numpy as np
    import pandas as pd
    from sklearn.feature_extraction import DictVectorizer
    from sklearn.tree import DecisionTreeClassifier

    def Titanic_survived():
    df = pd.read_csv('Titanic.csv')#获取信息表
    #nan替换为0
    df.fillna(df['Age'].mean(),inplace = True)


    dict_train = df.loc[:,['Pclass','Age','Sex']].to_dict(orient='record')
    dict_target = pd.DataFrame(df['Survived'],columns=['Survived']).to_dict(orient='record')

    #训练数据字典向量化
    dv_train = DictVectorizer(sparse=False)
    x_train = dv_train.fit_transform(dict_train)

    #目标数据字典向量化,将字符串变成数字
    dv_target = DictVectorizer(sparse=False)
    y_target = dv_target.fit_transform(dict_target)



    #创建训练模型并训练
    d_tree = DecisionTreeClassifier()#第一步,创建决策树对象
    d_tree.fit(x_train,y_target)#第二步,决策树对象d_tree调用fit函数,训练数据建立模型

    data_predict = {
    'Pclass':'Bonnell',
    'Age':60,
    'Sex': 'female'

    }

    x_data = dv_train.transform(data_predict)
    #第三步,决策树对象d_tree,调用predict()函数,预测结果
    print(dv_target.inverse_transform(d_tree.predict(x_data).reshape(-1,1)))

    Titanic_survived()
     
  • 相关阅读:
    神武
    position 属性
    C# 工作区和窗口的属性名
    魔兽世界命令行
    Dota2一直 正在登录服务器的解决办法
    dota2交换物品
    Servlet的5种方式实现表单提交(注册小功能)
    JQuery的ajaxFileUpload的使用
    JS日期转换
    Tomcat7后台通过get接收数据处理乱码
  • 原文地址:https://www.cnblogs.com/chaojiyingxiong/p/9715861.html
Copyright © 2020-2023  润新知