【解读】从官方Titanic案例打开kaggle机器学习之路(中)

浏览: 3208

前言

前文传送门:

【解读】从官方Titanic案例打开kaggle机器学习之路(上)


有争议的数据

我们对数据做出了一些假设和结论。到目前为止,我们不必改变单个特征为了达到目的。我们现在来执行我们的决定和假设来纠正,创建和完成目标。


通过删除特征来修正模型

这是一个很好的开端。通过删除特征,我们就处理更少的数据。加快了运行速度,简化了分析。


基于我们的假设和之前得出的结论,我们希望删除客舱(数据修正假设2)和船票信息(数据修正假设1)特征。


请注意,我们一起对训练和测试数据集都执行操作,以保持一致。


图片.png


从现有的创建新的特征提取

在删除姓名和乘客ID特征前,我们想要分析是否可以设计一个姓名特征,通过提取称谓并测试称谓和生存之间的相关性。

在下面的代码中,我们使用正则表达式提取称谓特征。正则表达式模式(\ w + \。)匹配名称特征中以点号字符结尾的第一个单词。 expand = False标志返回一个DataFrame。


图片.png

图片.png


我们我们可以用更常见的名称替换许多称谓,或将它们归类为少数类:

图片.png


我们可以将类别类型的称谓转换为序号表示:


图片.png


图片.png


图片.png


观察

当我们绘制称谓,年龄和生存特征时,我们注意到以下情况:

大多数称谓的年龄组别是准确的

称谓年龄组别的生存情况略有差异

某些头衔大多存活下来(例如Mme,Lady,Sir)或者没有存活(例如:Don,Rev,Jonkheer)


决策

我们决定保留新的称谓特征来训练模型


转换类别类型的特征

现在,我们可以将包含字符串的特征转换为数值类型特征,这是大多数模型算法所要求的。这样做也将帮助我们实现功能完成目标。

我们开始将性别(Sex)特征转换为名为性别(Gender)的新特征,其中女性取值为1,男性取值为0。

图片.png


完成一个数值型连续特征

现在我们应该开始估计并填充有着缺少值或空值的特征。我们先来对Age特征进行处理。

我们可以考虑三种方法来填充连续数值特征。

1. 一个简单的方法是在均值和标准差之间生成随机数。

2. 猜测缺失值的更准确的方法是使用其他相关特征。 在我们的案例中,我们注意到年龄,性别和Pclass之间的相关性。 使用Pclass和Gender特征组合中Age的中位数值猜测年龄值。 因此,Pclass = 1和Gender = 0组合的中位数年龄,Pclass = 1和Gender = 1,等等......

3. 结合方法1和2.因此,不要根据中位数猜测年龄值,而根据Pclass和Gender组合,使用平均值和标准差之间的随机数。

方法1和3将在我们的模型中引入随机噪声。 多次执行的结果可能会有所不同。 我们更喜欢方法2。


图片.png

让我们开始准备一个空数组,以包含基于Pclass x Gender组合的猜测年龄值。


图片.png


现在我们遍历Sex(0或1)和Pclass(1,2,3)来计算6种组合的Age的猜测值。


图片.png

图片.png


让我们创建年龄段并确定与Survived的相关性:

图片.png


让我们用基于这些段来用数字替换掉Age:

图片.png


我们现在能将年龄段的特征删除了:

图片.png


结合现有特征创建新特征

我们可以为Parch(父母与小孩个数)和SibSp(堂兄弟/妹个数)结合的家庭规模创建一个新功能。 这将使我们能够从我们的数据集中删除Parch和SibSp特征。

图片.png


我们可以创建另一个称为IsAlone(单人)的特征:


图片.png


我们放弃Parch,SibSp和FamilySize特征,使用IsAlone特征:

图片.png


我们还可以创建一个结合Pclass和Age的人工特征:

图片.png


完成分类特征

登船港口特征需要基于登乘港口的S,Q,C值。 我们的训练数据集有两个缺失值。 我们使用众数填补这些缺失值。

图片.png

图片.png


将类别特征转换为数值特征

我们现在可以通过创建一个新的数值型特征Port来转换EmbarkedFill特征。

图片.png


快速完成并转换数字特征

我们现在补齐船票(Fare)特征,使用出现最多的情况填充。

我们还想将票价四舍五入到小数点后两位,因为它代表货币。

图片.png


我们能创建船票分段的特征:

图片.png


根据FareBand(船票分段)将票价特征转换为序数值:

图片.png


测试集上:

图片.png


未完待续~

推荐 4
本文由 ID王大伟 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

1 个评论

泰坦尼克数据太经典了

要回复文章请先登录注册