01、原始数据
有两个数据集:train和test数据集
(1)train数据集包含12个变量,891条数据
(2)test数据集只有11个变量,缺少一个“是否生存”的变量,一共有418条数据

02、缺失值查看
2.1、train数据集
(1)使用VIM包,查看整个数据集缺失情况。可以发现train数据集中age变量缺失严重,缺失177个数值
(2)查看具体哪几行的Age变量缺失
(3)验证一下age变量缺失行数
library(VIM)
aggr(train,prop=FALSE,numbers=TRUE)
#查看age具体哪几行缺失
a<-train$PassengerId[is.na(train$Age)]
a
length(a) #177


2.2、test数据集
(1)test数据集中age变量和fare变量缺失
(2)age缺失86个
(3)fare缺失一个
library(VIM)
aggr(test,prop=FALSE,numbers=TRUE)
#-------------------------------------------------------------->age
age<-test$PassengerId[is.na(test$Age)]
age
length(age) #86
#-------------------------------------------------------------->fare
fare<-test$PassengerId[is.na(test$Fare)]
fare #1044
length(fare) #1

03、缺失值处理

3.1、mice包
R中的mice包通过合理的数据值可以帮助我们填充缺失值。
这些合理的数据值都是从一个分布中得到的,这个分布是根据缺失数据点的特定情况设计的
3.2、Age变量缺失值处理
由train缺失值展示可以知道,Age变量缺失值严重
使用mice函数做变量处理,完成缺失值填充
set.seed(129)
library(mice)
#mice函数进行插补缺失数据,某些不太有用的变量删除掉
mice_mod <- mice(full[, !names(full) %in% c('PassengerId','Name','Ticket',
'Cabin','Family','Surname','Survived')],method='rf')
mice_output <- complete(mice_mod)

3.3、Age与存活关系
右侧图显示在泰坦尼克灾难中,大部分男性是死亡的;
女性的生存率比较高,并且高龄女性的存活率很高

网友评论