一、案例背景

1912年4月10日,泰坦尼克号从英国南安普敦出发,途经法国卢森堡以及爱尔兰昆士敦,驶向美国纽约。在4月14日深夜到4月15日凌晨,泰坦尼克号与冰山相撞后沉没。由于船上没有足够的救生艇供所有人使用,导致2224名船员及乘客中,1502人丧生。

二、案例数据

数据来源

Kaggle:Titanic

理解数据

包含乘客存活状况的数据一共有891条,部分数据如下图所示:
数据字典:

变量 定义 说明
PassengerId 乘客编号
Survived 存活状况 0表示死亡,1表示幸存
Pclass 客舱等级 船票上的客舱等级,1表示一等舱,2表示二等舱,3表示三等舱
Name 姓名
Sex 性别 male表示男性,female表示女性
Age 年龄
Sibsp 船上的兄弟姐妹数或配偶数 指同代直系亲属数,忽略未婚妻或未婚夫
Parch 船上的父母数或子女数 指不同代直系亲属数,如果小孩是和除了父母之外的人一起出行的,则Parch=0
Ticket 船票编号
Fare 船票价格
Cabin 客舱号
Embarked 登船港口 出发点是S表示的英国南安普顿,途经C表示的法国卢森堡以及Q代表的爱尔兰昆士敦

三、数据清洗

重复值处理

使用Excel的数据工具“删除重复项”,结果显示数据集无重复项。

缺失值处理

数据集中缺失值是以空白单元格进行显示的。

首先,按列定位缺失值。步骤如下图所示,最终有缺失值的列是Age、Cabin以及Embarked。

其次,计算缺失率。对包含缺失值的Age、Cabin以及Embarked列分别使用COUNTBLANK函数统计缺失值,然后除以样本量891,结果如下图所示。

最后,处理缺失值。
(1)年龄缺失值的处理。年龄的描述统计如下图最右边的表所示,方差约为211,说明年龄分布的离散程度比较大。下图中从左到右分别是用平均值、中位数以及众数填充年龄缺失值得到的描述统计结果,从结果来看,为了减小年龄方差,使用平均值30(四舍五入)来填充年龄缺失值效果较好。

(2)客舱号缺失值处理
虽然客舱号缺失率高达77%,但这里并不能直接删掉Cabin列。因为客舱号和客舱等级相关联,而客舱等级数据没有出现缺失的情况。所以,这里使用“Unknow”来填充客舱号缺失值,表示“客舱号不确定”。

(3)登船港口缺失值处理
登船港口缺失值只有2条,缺失率不足0.3%。首先按PassengerId对数据排序,然后用数据透视表统计各个登船港口的人数,统计结果如下图所示,最后用登船港口的众数S来填充登船港口的缺失值。

异常值处理

由于年龄数据中包含小数,所以不足1岁的按1岁处理,其他年龄数据则用ROUND函数根据四舍五入原则取整。

四、数据加工

提取头衔

乘客的姓名数据包含了乘客的头衔,从数据可以看出,这里的头衔指乘客的贵族等级或普通称呼。

新建头衔列,用Title表示。使用两次“分列”功能从Name列中将头衔提取出来。步骤如下:
第一步,使用数据工具“分列”,以逗号(,)为分隔符,提取出名。
第二步,使用数据工具“分列”,以英文句点(.)为分隔符,将头衔和其他部分分开。
第三步,整理提取出来的头衔,结果如下。

头衔 含义
Miss 未婚女性
Mrs 已婚女性
Mr 已婚男性
Master 精通某方面知识技能的人
Dr 医生或博士
Mlle (法)小姐
Col 上校
Major 少校
Lady 女士(有时候用于称呼爵士的妻子或女贵族)
Mme 太太
Ms 女士
Sir 先生或爵士
the Countess 伯爵夫人
Rev 牧师
Capt 上尉或船长
Don (西)先生,用于有地位和身份的人
Jonkheer (法)低于骑士,没有爵位的男性贵族

显然,头衔和性别与社会地位之间存在着很强的关联性。对头衔再分组,结果如下:

分类 范围
军人 Col, Major,Capt
贵族女性 Lady,the Countess
贵族男性 Sir,Don,Jonkheer
精英 Master,Dr,Rev
普通女性 Miss,Mrs,Mlle,Mme, Ms
普通男性 Mr

提取甲板类型

由于客舱号中包含了甲板类型,所以可以将客舱号提取出来,这样,客舱号对幸存率的影响问题就转换成了乘客居住客舱挨着的甲板类型对乘客幸存率的影响问题。将甲板类型提取出来,结果如下。

五、数据分析

客舱等级对存活率的影响

用数据透视表统计各个客舱等级的存活率,结果如下:

绘制客舱等级对存活率影响的条形图,结果如下:

从图表分析结果来看,在幸存的乘客中,1等舱的存活率最高,其次是3等舱,最后是2等舱。

头衔对幸存率的影响

用数据透视表统计各个头衔对应的乘客幸存情况,按再分组的头衔范围统计各组存活率,结果如下:

按头衔分组结果绘制存活率条形图,结果如下:

从图表分析结果来看,在幸存的乘客中,存活率最高的是普通女性,其次是普通男性,再次是精英人士。军人、贵族女性以及贵族男性这三组乘客的幸存率均比较低。

性别对存活率的影响

用数据透视表统计性别分别为男、女的存活情况,结果如下:

绘制性别对存活率的影响条形图,结果如下:

从图表分析结果来看,在幸存的乘客中,女性存活率明显比男性存活率高。

年龄对存活率的影响

用数据透视表统计各个年龄的存活情况,结果如下。
根据各个年龄的存活情况统计结果,划分年龄段,并计算各个年龄段的存活率,结果如下。

按年龄段绘制存活率条形图:

从图表分析结果来看,在幸存的乘客中,青年存活率最高;其次是婴幼儿和中年,这两个年龄段的存活率差异不大;再次是青少年。少儿和老年的存活率都比较低。

同行兄弟姐妹及配偶数对存活率的影响

用数据透视表统计同行中,不同数目的兄弟姐妹数对存活率的影响情况,结果如下:

绘制同行兄弟姐妹数及配偶数对存活率的影响条形图,结果如下:

从图表分析结果来看,在幸存的乘客中,同行的兄弟姐妹及配偶数越多,存活率越低。

同行父母数对存活率的影响

用数据透视表统计同行中,不同数目的父母数对存活率的影响情况,结果如下:

绘制同行父母数对存活率的影响条形图,结果如下:


从图表分析结果来看,在幸存的乘客中,如果同行的父母数为1、2或3,存活率都比较高,且都高于50%;如果人数为0,则存活率接近35%;如果人数为5,则存活率为20%;而人数为4或6的话,则存活率为0。

船票编号对幸存率的影响

观察船票编号,有重复数据,这说明有些乘客是一同出行的,而且他们的船票编号是一样的。因此,船票编号对幸存率的影响问题就转换成了同行人数对存活率的影响问题。在一同出行的乘客中,有单人出行(驴友为0),有2人结伴而行,也有3人及以上结伴而行。因此,同行的乘客中,幸存的乘客有1个及以上。此外,结伴同行的乘客也包括前述同行的兄弟姐妹及配偶、同行的父母的情况。

用数据透视表按船票编号统计存活情况,结果如下。

绘制同行人数对存活率的影响条形图,结果如下。

从图表分析结果来看,在幸存的乘客中,同行存活人数为1的存活率远高于同行人数为2及以上的存活率。这与同行的兄弟姐妹及配偶数分析结果类似。

船票价格对存活率的影响

根据船舱等级的不同,船票的价格也有所差异。泰坦尼克号上,二等舱的价格最低为13英镑,一等舱的最低价格为30英镑。以13和30为分区点,对船票价格进行分组,结果如下:

绘制船票价格区间对存活率的影响条形图,结果如下。

从图表分析结果来看,在幸存的乘客中,船票价格在30英镑及以上的乘客,存活率最高;其次是船票价格在13-30英镑之间的乘客;最后是船票价格在0-13英镑之间的乘客。而且,手持0到13英镑之间的船票的乘客和手持13到30英镑之间的船票的乘客,存活率相差不大。相比于拥有低价(0-13或13-30)船票的乘客来说,拥有高价(30以上)船票的乘客存活率要高近10个百分点。这个结果与客舱等级对存活率的影响分析结果类似。

甲板类型对幸存率的影响

用数据透视表按甲板类型统计存活率,结果如下。

绘制甲板类型对存活率的影响条形图,结果如下。

因为U代表未知甲板类型,所以无法确定具体的甲板类型对存活率的影响。因此,这里排除这个类型,观察其他甲板类型与存活率之间的关系。从图表分析结果来看,在幸存的乘客中,B、C、D以及E这四个甲板附近的乘客存活率较高。

登船港口对幸存率的影响

用数据透视表统计各个登船港口的存活情况,结果如下:

绘制登船港口对存活率的影响条形图,结果如下:

从图表分析结果来看,在幸存的乘客中,在英国南安普顿(S)登船的乘客,存活率最高;其次是在法国卢森堡(C)登船的乘客;最后是在爱尔兰昆士敦(Q)登船的乘客。

六、数据结论

数据分析结果总结如下:
1.一等舱的乘客存活率最高,但并没有明显的客舱等级越高存活率越高的规律;
2.在灾难面前,社会经济地位似乎并没有成为乘客幸存的优势条件;
3.很明显,女性乘客的存活率比男性存活率高;
4.青壮年和婴幼儿的存活率较高;
5.同行的兄弟姐妹及配偶数越少,存活率越高;
6.同行的父母数较少 (3以及3以下),存活率都均较高;
7.船票编号相同的乘客越少,存活率越高。
8.拥有高价格区间(30及以上)的船票的乘客,存活率最高,但并没有明显的价格越高,存活率越高的规律;
9.由于客舱号数据缺失比较严重,所以在排除未知甲板类型数据后,B、C、D以及E甲板附近的乘客存活率较高。
10.根据登船港口的不同,乘客的存活率从英国南安普顿、法国卢森堡以及爱尔兰昆士敦依次降低。

Excel:TITANIC号乘客幸存特征分析相关推荐

  1. 数据分析实际案例之:pandas在泰坦尼特号乘客数据中的使用

    文章目录 简介 泰坦尼特号乘客数据 使用pandas对数据进行分析 引入依赖包 读取和分析数据 图形化表示和矩阵转换 简介 1912年4月15日,号称永不沉没的泰坦尼克号因为和冰山相撞沉没了.因为没有 ...

  2. 应用分类算法,预测泰坦尼克号乘客幸存结果

    应用分类算法,预测泰坦尼克号乘客幸存结果 一.业务场景 二.数据集说明 三.操作步骤 阶段一.启动HDFS.Spark集群服务和zeppelin服务器 阶段二.准备案例中用到的数据集 阶段三.对数据集 ...

  3. 货车刹车失灵坠入百米深谷车成碎片乘客幸存

    3月12日,一辆运载建筑材料的货车,在湄潭县茅坪镇一路段坠落百米山谷后解体.所幸,车中3人全部生还. 当天早晨,这辆货车行驶到湄潭县茅网络赌球坪镇和石莲乡交界处时,因刹车失灵坠入100多米高的河谷中, ...

  4. java对列_JAVA实现EXCEL行列号解析(一)——单格解析

    Excel每一个单元格都已一个单元格名: 如:A1中A表示第一列,1表示第一行.再比如AB3表示第28列,第3行. 说到底,实际上是10进制与26进制之间的转化! 1. 通过单元格名获得行号 如输入A ...

  5. laravel excel 身份证号导出问题

    身份证号导出,默认为数字格式,excel导出的结果是身份证号后4位全是0,解决办法是在身份证号的开头或结尾加空格

  6. Excel列编号英文字母字符生成及转义算法

    面试网易游戏遇到的一道题: excel的列数是A,B,C,...,Z,AA,AB,AC.......AZ,BA,BB...BZ. 要求写一个函数,给你一个数字你就能得出对应的列数,例如27对应AA,2 ...

  7. Java poi Excel xls列号数字转字母

    最近遇到导出的xls中 列是动态生成的,且单元格中需要用到公式,而xls公式不是用数字列号而是用列字母来表示的,这时需要把数字的列号转成该列对应的字母.因为是按月导出 一个月最多31天,所以刚开始采用 ...

  8. 泰坦尼克号数据_数据分析-泰坦尼克号乘客生存率预测

    项目背景 目标 预测一个乘客是否能够在泰坦尼克号事件中幸存. 概述 1912年4月15日,泰坦尼克号在首次航行期间撞上冰山后沉没,船上共有2224名人员(包括乘客和机组人员),共有1502人不幸遇难. ...

  9. 结构化数据建模——titanic数据集的模型建立和训练(Pytorch版)

    本文参考<20天吃透Pytorch>来实现titanic数据集的模型建立和训练 在书中理论的同时加入自己的理解. 一,准备数据 数据加载 titanic数据集的目标是根据乘客信息预测他们在 ...

最新文章

  1. 鉴智机器人高薪诚聘 | 3D视觉、SLAM、SLAM/VIO融合定位算法工程师等多个岗位
  2. php后台无法接受文件,ios afnetworking2.x上传图片 服务端php无法接受文件问题
  3. 六年级上学期计算机上册教案,六年级上册数学全册教案
  4. zookeeper3.4.6安装
  5. 2017年计算机三级网络技术试题,2017年计算机三级网络技术考前试题及答案(8)
  6. 一年前端开发工程师简历_一年前,我开始学习编码,专注于前端开发。
  7. python画图小实例_Python画高斯分布图形实例代码
  8. Html5新特性 canvas画板画直线和等比缩放居中裁剪图片
  9. php微积分难吗,微积分中10大经典问题
  10. 第九届全国大学生GIS应用技能大赛下午(试题及参考答案)
  11. 从实习生到算法专家,他只用了2年!
  12. 《UNP》随笔——“实现一个简单的回射服务器”存在的不足(信号处理)
  13. 300M宽带网速只有16M?下载速度达到多少才算正常?
  14. 有趣的linux LS命令
  15. 结束语-放弃完美主义,执行力就是限时限量认真完成
  16. 【Vue插件】Vue-amap:基于vue-cli2.0与高德地图的使用
  17. Serv-U详细配置图文教程
  18. oracle 可视化界面使用,Oracle DBMS可视化界面设计
  19. 在家用电器中使用单片机应属于微型计算机的,在家用电器中使用单片机应属于微计算机的什么...
  20. CISCO路由器初始化必备安全命令。

热门文章

  1. Spring中的bean是什么
  2. tyvj 2054 [Nescafé29]四叶草魔杖
  3. 《魅魔succubus》 来自韩国3d建模师 yeonghee cho
  4. 【计算机毕业设计】基于微信小程序的流浪动物救助系统 动物领养系统
  5. 局域网内的Windows操作系统时钟同步
  6. CSS动画效果-用于背景(旋转等)
  7. 车规级安全芯片HSM、SE等:
  8. linux库函数实现复制文件,linux应用编程笔记(6)库函数方式实现文件复制编程...
  9. 男生的不主动,会让女生很失望
  10. fopen和fclose函数的使用