用决策树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()
 

版权声明:本文为chaojiyingxiong原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/chaojiyingxiong/p/9715861.html