首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >项目实战二:利用Python实现Kaggle经典案例之泰坦尼克号乘客生存预测

项目实战二:利用Python实现Kaggle经典案例之泰坦尼克号乘客生存预测

作者头像
用户7569543
发布于 2020-07-17 06:16:49
发布于 2020-07-17 06:16:49
1.2K0
举报

上次讲了利用Python实现波士顿房价预测的回归模型,这时小明一脸懵逼,心想回归模型是什么鬼??️?

(咳咳,敲黑板~科普一下,在机器学习中,根据目标变量(因变量)是否是连续值可以分为回归和分类两种模型)本次就进行一个简单的二分类模型介绍——泰坦尼克号乘客生存预测。

首先还是先导入接下来要用到的Python包

然后导入数据集,因为本次用到的数据集我已预保存到本地电脑,直接读取数据进来即可(数据集下载链接https://www.kaggle.com/c/titanic/data),同样先查看训练集数据长什么样

PassengerId 乘客编号 Survived 是否幸存 Pclass 船票等级 Name 乘客姓名 Sex 乘客性别 Age 乘客年龄 SibSp 兄弟姐妹/配偶数量 Parch 父母/子女数量 Ticket 船票号码 Fare 船票价格 Cabin 船舱 Embarked 登录港口

因为Titanic这个数据集在下载前已经分好了训练集与测试集,我们一起来看下数据的整体情况以便后面做相应处理。

可以看到这次两个数据集存在缺失值(肿么办,老shi我好方?)不用怕~可以看到训练集是年龄和船舱两个特征有缺失值,测试集是年龄、船舱和船票价格三个特征存在缺失值,均无异常值。

我们先把训练集和测试集合并起来,方便后面一起做数据处理和特征工程

数据合并完毕,我们看下目标变量Survived数据分布情况,分析正负样本平衡性

0 表示未获救,1 表示获救

可以看到正负样本不是十分平衡,但在这里问题也不大。然后我们再看下各特征数据分布情况,这里只显示了数值型变量

看各特征相关性,这里默认采用皮尔逊相关系数,分类变量的相关性这里也没显示出来

接下来进行缺失值处理,首先对年龄Age进行缺失值填充,这里我们暂时用所有乘客的年龄中位数去填充

登陆港口Embarked用众数填充

而船票价格Fare一般来说与船票等级和登录港口有关,这里我们暂时用按这两者分组后的船票均值来填充

最后是船舱,因为前面我们看到这个特征缺失值占比50%以上,不好处理,所以这里先不填充后面直接剔除处理(老shi你这是不是太简单粗暴了一点~?是的!)

接下来是特征工程,首先我们简单分析下各特征发现,SibSp兄弟姐妹/配偶数量与Parch父母/子女数量这两个特征比较相近,可以合并得到一个新变量,即家庭成员数量,另外在西方一般可以根据姓名称呼来判断其社会地位高低,所以我们可以对Name姓名这个特征做一个简单的分类处理,得到一个新特征替换原来特征,这样可能对获救乘客的影响比原来的特征强(老shi,你怎么这么机智又逗逼,让我好嫉妒啊,哈哈~)

然后我们把没有用的特征先剔除再对分类特征数值化后再喂到模型中去

到此数据预处理及特征工程已经简单处理完毕,我们来看下处理后的数据情况

可以看到数据中已经没有缺失值且各特征值均已实现数值化(这里比个,王祖蓝完美兰花指,脑补?)接下来我们还是按照一开始的方式进行数据划分,前面891条是训练集,最后418条是测试集

终于到最鸡冻的时刻啦?,我们把数据喂到逻辑回归模型(虽然叫回归,但其实是个分类模型,挂羊头卖狗肉懂吗?!)然后我们一起来看看最后的模型结果。

0.96!可以说这个结果很不错了!哈哈,有兴趣可以一起来试下哦?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 多赞云数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
泰坦尼克号生还率预测
首先要把 xls 文件中的数据读进来,使用 pandas 库的 read_excel():
yichen
2021/03/10
5200
用sklearn机器学习预测泰坦尼克号生存概率
首先我们通过pandas的read_.csv函数来导入两个csv然后用shape函数看看行列。
开心鸭
2020/10/26
1.3K0
用sklearn机器学习预测泰坦尼克号生存概率
Kaggle Titanic 生存预测比赛超完整笔记(中)
本文通过分析Kaggle泰坦尼克生存数据集中与生存相关的因素,使用多种机器学习算法,如逻辑回归、决策树、随机森林、支持向量机、神经网络等,对数据进行了特征工程、模型训练和特征重要性分析。通过对比不同模型的预测结果,发现年龄、性别、船舱等级、船舱位置、船舱有无窗户等特征对生存具有显著影响。同时,还分析了特征之间的相关性,发现了一些有趣的规律。通过特征选择和模型融合,提高了模型的预测精度。该研究为泰坦尼克号幸存者预测提供了有价值的参考。
企鹅号小编
2018/01/02
1.2K0
Kaggle Titanic 生存预测比赛超完整笔记(中)
泰坦尼克号幸存预测
本次项目主要围绕Kaggle上的比赛题目: "给出泰坦尼克号上的乘客的信息, 预测乘客是否幸存" 进行数据分析
py3study
2020/01/20
1.3K0
Kaggle泰坦尼克号船难--逻辑回归预测生存率
(三)需要的库:numpy + pandas + matplotlib + sklearn Win 10安装numpy、pandas、scipy、matplotlib和sklearn Win 10系统matplotlib中文无法显示的解决方案
海天一树
2018/07/25
3.6K0
Kaggle泰坦尼克号船难--逻辑回归预测生存率
2 机器学习入门——逻辑回归之kaggle泰坦尼克号竞赛
前面几篇逻辑回归的例子有些是人造出来的,有些是比较正规的,但数据都比较完整,没有缺失的属性。虽然我们在很多数据上取到的非常好的效果,但总感觉好像不够味,不像实战。
天涯泪小武
2019/01/17
8180
经典中的经典--泰坦尼克号的乘客生存预测
数据分析/挖掘是以概率论、线性代数、统计学、信息论为基础,根据之前接触到的数据挖掘流程,可定义为:数据准备-->数据探索--> 数据预处理-->特征工程-->模型建立-->模型评估,其中数据探索、数据预处理、特征工程针对某一属性同时进行。
数据社
2020/05/25
2.2K0
泰坦尼克号之生存预测(1)
上一节一起学习了one-hot编码,那么本节主要偏重实践,一起践行one-hot!
公众号guangcity
2019/09/20
6230
泰坦尼克号之生存预测(1)
案例实战|泰坦尼克号船员获救预测(数据预处理部分)
01 — 背景介绍 已经推送了一些经典的机器学习和深度学习相关的算法,明白了这些算法的原理,对我们之后解决实际问题会打下很好的基础,如何将这些零散的知识综合起来,从头到尾地解决一个实际问题呢,Kaggle会是一个很好的平台,它里面涉及地都是实际问题,并提供了相关的数据集,还有讨论,还会有牛人给出的分析解决方案,因此,我们也拿Kaggle中的项目来实战演练下。 今天,首先介绍参赛队伍最多的一个实际问题:泰坦尼克号船员获救预测,先看下项目的基本描述: Competition Description 项目描述
double
2018/04/02
1.6K0
案例实战|泰坦尼克号船员获救预测(数据预处理部分)
品玩SAS:泰坦尼克号之灾(上)——逃生率分析
最近重温了一遍泰坦尼克号,又一次为杰克和露丝甜美的爱情感动,两人坦诚真挚的相爱让人神往,一阵幻想过后咬了口嘴边的柠檬,真酸...
机器思维研究院
2019/09/11
1.4K1
品玩SAS:泰坦尼克号之灾(上)——逃生率分析
死里逃生?机器学习算法揭露泰坦尼克号幸存者之谜
影片根据真实事件改编,片中的泰坦尼克号是英国白星航运公司下辖的一艘奥林匹克级邮轮,于1909年动工建造,1912年首次航行。1912年4月15日,在首次航行期间,泰坦尼克号撞上冰山后沉没,2224名乘客和机组人员中有1502人遇难。这场轰动的旷世悲剧震撼了国际社会,并警醒人们制定了更完善的船舶安全条例。
用户1621951
2019/10/18
1.3K0
死里逃生?机器学习算法揭露泰坦尼克号幸存者之谜
深度学习|泰坦尼克号生还数据处理
之前我们用过传统的机器学习算法预测过泰坦尼克号数据的生还情况,这次我们使用神经网络算法来进行建模。
罗罗攀
2019/01/28
1.3K0
深度学习|泰坦尼克号生还数据处理
泰坦尼克号之生存预测(2)
昨天写了一篇有关leetcode刷题的文章,今天接着上次的kaggle,进行特征选择,模型选择等的一系列步骤。 关于进群交流的伙伴,可以点击公众号右下角联系我,备注leetcode,进算法群;备注总群,进交流总群!
公众号guangcity
2019/09/20
5560
泰坦尼克号之生存预测(2)
一个实例告诉你:Kaggle 数据竞赛都有哪些套路
前面写了很多篇理论,大家愿意一篇一篇坚持看下来其实挺不容易的,虽然理论很重要,但脱离了实践还是空中楼阁啊,算法科学家也不可能不代码啊,所以呀,今天我们就插播一期实践,和大家聊一聊实际过程当中机器学习算法的应用。 对于我们这些初学者或者说外行来说,因为我们没机会接触到机器学习真正的应用项目,所以一些比赛平台往往是我们不错的选择,比如说这个Kaggle啊,前一段时间被Google收购还挺火的,还有国内的天池啊,DataFountain啊,上面都有不少比赛可以选择,但是入门嘛,我们就从最简单的开始,就是那个被无数
AI研习社
2018/03/28
9770
一个实例告诉你:Kaggle 数据竞赛都有哪些套路
机器学习实战第2天:幸存者预测任务
在泰坦尼克号灾难中,了解乘客生存状况是一个重要而挑战性的任务。这个任务的目标是通过分析乘客的各种特征,构建预测模型,以预测一个乘客在沉船事件中是否幸存。数据集提供了关于每位乘客的多个方面的信息,如性别、年龄、客舱等级等。
Nowl
2024/01/18
2340
机器学习实战第2天:幸存者预测任务
Kaggle入门泰坦尼克号乘客生还预测
Kaggle是由联合创始人、首席执行官安东尼·高德布卢姆(Anthony Goldbloom)2010年在墨尔本创立的,主要为开发商和数据科学家提供举办机器学习竞赛、托管数据库、编写和分享代码的平台。该平台已经吸引了80万名数据科学家的关注,这些用户资源或许正是吸引谷歌的主要因素。
里克贝斯
2021/05/21
5680
Kaggle入门泰坦尼克号乘客生还预测
泰坦尼克号幸存率研究
总第53篇 代码区域 import pandas as pd import numpy as np import matplotlib import matplotlib.pyplot as plt %matplotlib inline#为能够jupyter在线使用matplotlib df=pd.read_csv('C:\\Users\\dell\\Desktop\\titanic_data.csv') df.head(5)#先显示出前5行,观察有哪些数据 数据概况: PassengerId:
张俊红
2018/04/11
7610
泰坦尼克号幸存率研究
UdaCity-机器学习工程师-项目0:预测泰坦尼克号乘客生还率
1912年,泰坦尼克号在第一次航行中就与冰山相撞沉没,导致了大部分乘客和船员身亡。在这个入门项目中,我们将探索部分泰坦尼克号旅客名单,来确定哪些特征可以最好地预测一个人是否会生还。为了完成这个项目,你将需要实现几个基于条件的预测并回答下面的问题。我们将根据代码的完成度和对问题的解答来对你提交的项目的进行评估。
Gavincui
2018/09/11
1K0
UdaCity-机器学习工程师-项目0:预测泰坦尼克号乘客生还率
Kaggle经典数据分析项目:泰坦尼克号生存预测!
最近有很多读者留言,希望能有一个完整的数据分析项目练手,这几天收集了组织成员们的推荐。其中泰坦尼克号生存预测作为最经典的启蒙数据分析项目,对于初学者来说是应该是最合适的了,后面将分享更多进阶的数据分析项目。如果已经有基础了,推荐:
Datawhale
2020/08/28
2.9K0
Kaggle经典数据分析项目:泰坦尼克号生存预测!
泰坦尼克号生存预测入门
交叉验证参数 shuffle = False,正确率就提高了,why ???求解答
Michael阿明
2020/07/13
5310
泰坦尼克号生存预测入门
推荐阅读
相关推荐
泰坦尼克号生还率预测
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档