版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
机器学习
项目5项目拓展——泰坦尼克号乘客生还情况预测15.3泰坦尼克号乘客生还情况预测目录CONTENTS015.3泰坦尼克号乘客生还情况预测任务目标任务目标使用逻辑回归算法对泰坦尼克号数据集进行分析,预测乘客是否生还,包括数据加载、特征工程、模型训练与评估、预测与可视化分析。完整建模流程1数据加载加载train.csv数据集,选择特征与目标变量2特征工程性别编码、缺失值填充、数据集拆分3模型训练标准化处理后训练逻辑回归模型4预测与分析预测新样本并分析特征贡献度数据集介绍泰坦尼克号(RMSTitanic)于1912年4月15日沉没,是历史上最著名的海难之一。本数据集包含891条乘客信息,包括生还与否、舱位等级、性别、年龄等特征。特征说明•PassengerId:乘客ID(唯一标识)•Survived:是否生还(0=否,1=是)•Pclass:舱位等级(1/2/3等舱)•Name:乘客姓名•Sex:性别(male/female)•Age:年龄(含缺失值)•SibSp:兄弟姐妹数•Parch:父母子女数•Ticket:票号•Fare:票价•Cabin:舱位号(大量缺失)•Embarked:登船港口选择的特征与目标选择的6个特征:•Pclass:舱位等级•Age:年龄•SibSp:兄弟姐妹数•Parch:父母子女数•Fare:票价•Sex:性别(需编码)目标变量:•Survived:0=未生还,1=生还数据规模:•总样本数:891•训练集:712个样本•测试集:179个样本数据加载与特征选择使用pandas加载train.csv数据集,选择6个特征和目标变量。#导入必要的模块importnumpyasnpimportpandasaspdfromsklearn.model_selectionimporttrain_test_splitfromsklearn.linear_modelimportLogisticRegressionfromsklearn.preprocessingimportStandardScalerfromsklearn.metricsimportaccuracy_score,classification_report#加载Titanic数据集data=pd.read_csv("train.csv")#显示数据集的前几行print(data.head())#选择特征和目标变量X=data[['Pclass','Age','SibSp','Parch','Fare','Sex']]y=data['Survived']#将性别转换为数值型(0:女,1:男)X.loc[:,'Sex']=X['Sex'].map({'female':0,'male':1})#采用全体乘客年龄的均值进行缺失值填充,以保证样本数量的完整性X.loc[:,'Age']=X['Age'].fillna(X['Age'].mean())#拆分训练集和测试集X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=42)print('训练集数据形状:',X_train.shape)print('测试集数据形状:',X_test.shape)图5-13
查看数据集的维度数据集信息数据统计信息•总样本数:891•特征数:12个原始字段•选择特征数:6个生还情况:•未生还:549人(61.6%)•生还:342人(8.4%)性别分布:•男性:577人(64.8%)•女性:314人(35.2%)年龄信息:•平均年龄:29.7岁•缺失值:177个(19.9%)•填充方式:均值填充特征选择与处理选择的特征:•Pclass:舱位等级(1-3)•Age:年龄(填充均值)•SibSp:兄弟姐妹数•Parch:父母子女数•Fare:票价•Sex:性别(编码为0/1)未选择的特征:•PassengerId:唯一标识,无预测价值•Name:姓名,非结构化数据•Ticket:票号,格式不统一•Cabin:舱位号,缺失率过高(77%)•Embarked:登船港口,影响较小数据标准化与模型训练使用StandardScaler对数据进行标准化处理,创建逻辑回归模型并训练。#对数据进行标准化处理scaler=StandardScaler()X_train_scaled=scaler.fit_transform(X_train)X_test_scaled=scaler.transform(X_test)#创建逻辑回归模型clf=LogisticRegression(solver='lbfgs',max_iter=1000)#训练模型clf.fit(X_train_scaled,y_train)#评估模型train_score=clf.score(X_train_scaled,y_train)test_score=clf.score(X_test_scaled,y_test)print('训练集得分:{:.2f}'.format(train_score))print('测试集得分:{:.2f}'.format(test_score))代码说明:•StandardScaler:均值为0,方差为1•solver='lbfgs':默认优化算法•max_iter=1000:最大迭代次数•训练得分与测试得分均为0.80图5-14
模型得分结果预测并输出预测结果结果分析:•模型预测该样本为“未生还”,生还概率仅为0.07,未生还概率高达0.93•该样本为3等舱男性乘客,票价较低(15.2),符合“妇孺优先”政策下生还率较低的特征预测结果与实际标签(Survived=1)不一致,说明模型存在一定误判#选择测试集中的第一个样本进行预测new_sample=np.array([X_test.iloc[0]])new_sample_scaled=scaler.transform(new_sample)#预测结果prediction=clf.predict(new_sample_scaled)prediction_proba=clf.predict_proba(new_sample_scaled)#输出预测结果print('预测结果:{}'.format('生还'ifprediction==1else'未生还'))print('生还的概率为:{:.2f},未生还的概率为:{:.2f}'.format(prediction_proba[0,1],prediction_proba[0,0]))图5-15
模型预测结果任务小结完整建模流程回顾1.数据加载:使用pandas加载train.csv,包含891条乘客记录2.特征工程:性别编码(0/1)、年龄缺失值填充(均值)、选择6个特征3.数据拆分:按80/20比例拆分训练集(712)和测试集(179)4.标准化:使用StandardScaler对特征进行标准化处理5.模型训练:LogisticRegression(solver='lbfgs',max_iter=1000)6.模型评估:训练得分和测试得分均为0.807.模型预测
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机械制图与计算机绘图(第二版) 课件 第1-10讲 制图的课程任务和内容 - 平面的投影
- 权威发布CEO笔试题及答案
- 《2026年银行业初级职业资格》风险管理模拟试题集及解析
- 2026年教师资格《幼儿园教育》教案设计专项训练
- 2026年一级注册建筑师考试真题汇编及答案解析
- 2026年护士资格试题及答案
- 2025年中级经济师金融考试试题及答案
- 8 比尾巴字帖笔顺教学课件
- 2025~2026学年新疆维吾尔自治区伊犁哈萨克自治州伊宁县七年级下学期历史试卷
- 2025~2026学年山西朔州市怀仁市第二中学校九年级下学期5月期中历史试卷
- 生成式引擎优化(GEO)可信信息传播与信息生态治理规范
- 2026年8月成都市建筑科学研究院有限公司招聘检测辅助岗笔试备考题库及答案详解
- GB 48013-2026养老机构基本规范
- 2026 高考化学试题评析及教学启示河南卷
- 2026年国家统一法律职业资格考试全套真题(含标准答案+详细解析)
- 2026四川光雾山文旅康养产业有限公司招聘1人笔试题库含答案详解【黄金题型】
- 老师批改作业8种方法
- 2026年重庆市网格员招聘考试试题及答案解析
- 初中三年级英文短文范文 100 篇
- 一线数智中国制造业AI场景应用白皮书2026
- 货车使用协议书范本
评论
0/150
提交评论