案例:泰坦尼克号乘客生存预测
学习目标
通过案例进一步掌握决策树算法api的具体使用
1 案例背景
泰坦尼克号沉没是历史上最臭名昭着的沉船之一。1912年4月15日,在她的处女航中,泰坦尼克号在与冰山相撞后沉没,在2224名乘客和机组人员中造成1502人死亡。这场耸人听闻的悲剧震惊了国际社会,并为船舶制定了更好的安全规定。 造成海难失事的原因之一是乘客和机组人员没有足够的救生艇。尽管幸存下沉有一些运气因素,但有些人比其他人更容易生存,例如妇女,儿童和上流社会。 在这个案例中,我们要求您完成对哪些人可能存活的分析。特别是,我们要求您运用机器学习工具来预测哪些乘客幸免于悲剧。
案列
我们提取到的数据集中的特征包括票的类别,是否存活,乘坐班次,年龄,登陆home.dest,房间,船和性别等。

经过观察数据得到:
- 乘坐班是指乘客班(1,2,3),是社会经济阶层的代表。
- 其中age数据存在缺失。
2 步骤分析
1.获取数据
2.数据基本处理
- 2.1 确定特征值,目标值
- 2.2 缺失值处理
- 2.3 缺失值处理- 项目
3.特征工程(字典特征抽取)
4.机器学习(决策树)
5.模型评估
3 代码实现
导入需要的模块
import numpy as np
import pandas as pd
import warnings
warnings.filterwarnings('ignore')
from sklearn.tree import DecisionTreeClassifier,export_graphviz
from sklearn.feature_extraction import DictVectorizer
from sklearn.model_selection import train_test_split
data=pd.read_csv("titanic.txt")
x=data[['pclass','age','sex']]
y=data['survived']
# print(x)
# import sys
# sys.exit()
x['age'].fillna(x['age'].mean(),inplace=True)#inplace = true 在原字段中修改
# print(x)
# x=x.to_dict(orient='records')
# print(x)
train_x,test_x,train_y,test_y=train_test_split(x,y,random_state=22)
transf=DictVectorizer

该案例通过泰坦尼克号乘客数据,运用决策树算法进行生存预测。首先,对数据进行预处理,填充缺失值,然后使用特征如社会经济阶层、年龄和性别作为输入,训练并评估模型。模型在测试集上的准确率为某个值。最后,通过可视化工具展示决策树结构,并讨论其优缺点及防止过拟合的策略。
最低0.47元/天 解锁文章
1343

被折叠的 条评论
为什么被折叠?



