Kaggle是一个全球性的资料科学社群网站,上面有很多资料分析的比赛、资料分析的文章,以及可供下载的资料集。今天想跟大家分享一则资料分析的文章,作者(Meg Risdal)所要分析的资料集是有关铁达尼...

Kaggle是一个全球性的资料科学社群网站,上面有很多资料分析的比赛、资料分析的文章,以及可供下载的资料集。今天想跟大家分享一则资料分析的文章,作者(Meg Risdal)所要分析的资料集是有关铁达尼号的乘客资讯,里面使用到的data在Kaggle里面可以下载。那我们就跟着他的脚步来走一遍资料分析。

https://ithelp.ithome.com.tw/upload/images/20200817/20124935dXZYhNGxzi.jpg

以下是我们会用到的 package,所以我们就直接library进来。

library('ggplot2') # 视觉化library('ggthemes') # 视觉化library('scales') # 视觉化library('dplyr') # 资料整理与转换library('mice') # imputationlibrary('randomForest') # 机器学习

接着读入我们的资料集

train <- read.csv('F:/Users/yueh/Desktop/titanic08/train.csv', stringsAsFactors = F)test  <- read.csv('F:/Users/yueh/Desktop/titanic08/test.csv', stringsAsFactors = F)

先来看一下这两个资料个别带给我们什幺资讯。

str(train)str(test)

https://ithelp.ithome.com.tw/upload/images/20200817/20124935qTpvlkHAdM.png

https://ithelp.ithome.com.tw/upload/images/20200817/20124935IMzpSHOPd7.png

我们可以看到train有891笔资料,且具有12个变数。而test有418笔资料,且具有11个变数。他们不同的变数只差在train多了Survived这个变数。

而事实上,这笔资料原本是Kaggle上举办的机器学习竞赛,train是训练集,而test就是测试集。

在train里面,我们有的变数是:

    PassengerId:乘客编号Survived:是否存活(0:死亡,1:存活)Pclass:票舱分级(1:最高集,...,3:最低集)Name:姓名Sex:性别Age:年龄SibSp:兄弟姊妹及配偶在船上的总数(旁系)Parch:父母及小孩在船上的总数(直系)Ticket:票号Fare:票价Cabin:客舱编号Embarked:上船的港口

而我们的最终目的是去预测test里面的乘客是否存活。

首先我们先把两笔资料合併成一个资料框,如下:

full  <- bind_rows(train, test) # bind training & test datastr(full)

https://ithelp.ithome.com.tw/upload/images/20200817/201249357rGFs0PVu3.png