Kaggle入门之泰坦尼克号生还率预测

本文介绍了使用Kaggle数据集进行泰坦尼克号生还率预测的过程,包括数据探索、特征工程和模型训练。通过分析性别、登船地点、社会地位和年龄等因素对生还率的影响,最终选用Logistic回归实现预测,得到约80%的准确率。
摘要由CSDN通过智能技术生成
这是Kaggle上的一道入门题目,旨在让我们了解机器学习的大致过程。
题目链接: Titanic: Machine Learning from Disaster
题目大意:当年泰坦尼克号的沉没造成了很多人的死亡,救生艇不足是造成如此多人死亡的主要原因。尽管能否活下来要看运气,但是有些群体的存活概率比其他人更高。现在给出一些乘客的信息,包括他最后是否生还。根据这些信息,我们要对其他乘客是否生还进行预测。
首先引入我们需要的模块,如numpy、pandas和sklearn等:
import numpy as np
import pandas as pd
from pandas import Series, DataFrame

import matplotlib.pyplot as plt
%matplotlib inline
import seaborn as sns

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import KFold
from sklearn.metrics import accuracy_score
from sklearn.preprocessing import Imputer
然后,通过pandas读取训练数据并查看前5条数据:
train_data = pd.read_csv('./data/train.csv')
train_data.head()
PassengerId Survived Pclass Name Sex Age SibSp Parch Ticket Fare Cabin Embarked
0 1 0 3 Braund, Mr. Owen Harris male 22.0 1 0 A/5 21171 7.2500 NaN S
1 2 1 1 Cumings, Mrs. John Bradley (Florence Briggs Th… female 38.0 1 0 PC 17599 71.2833 C85 C
2 3 1 3 Heikkinen, Miss. Laina female 26.0 0 0 STON/O2. 3101282 7.9250 NaN S
3 4 1 1 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 0 113803 53.1000 C123 S
4 5 0 3 Allen, Mr. William Henry male 35.0 0 0 373450 8.0500 NaN S

可以看到,整个数据集一共有12列,根据描述,每一列的含义如下:

列名 含义
PassengerId 乘客编号
Survival 是否生还,0表示未生还,1表示生还
Pclass 船票种类,折射处乘客的社会地位,1表示上层阶级,2表示中层阶级,3表示底层阶级
Sex 性别,男性为male,女性为female
Age 年龄,不满1岁的年龄为小数
SibSp 该乘客同船的兄弟姐妹及配偶的数量
Parch 该乘客同船的父母以及儿女的数量
Ticket 船票编号
Fare 买票的费用
Cabin 船舱编号
Embarked 代表在哪里上的船

下面我们看一下数据的描述性统计结果:

train_data.describe()
PassengerId Survived Pclass Age SibSp Parch Fare
count 891.000000 891.000000 891.000000 714.000000 891.000000 891.000000 891.000000
mean 446.000000 0.383838 2.308642 29.699118 0.523008 0.381594 32.204208
std 257.353842 0.486592 0.836071 14.526497 1.102743 0.806057 49.693429
min 1.000000 0.000000 1.000000 0.420000 0.000000 0.000000 0.000000
25% 223.500000 0.000000 2.000000 20.125000 0.000000 0.000000 7.910400
50% 446.000000 0.000000 3.000000 28.000000 0.000000 0.000000 14.454200
75% 668.500000 1.000000 3.000000 38.000000 1.000000 0.000000 31.000000
max 891.000000 1.000000 3.000000 80.000000 8.000000 6.000000 512.329200

根据描述性统计结果,我们知道一共有891条记录,Age这一列有100多个缺失值。可以看到船上这些人的平均年龄在29岁左右,年龄最小的不到半岁,年龄最大的则有80岁。另外,船票的价格差距也比较大,有的人没有付钱就上了船,而船费最高的人则有512,而

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
泰坦尼克号存活预测是一个经典的数据科学项目,通常在Kaggle这样的数据竞赛平台上进行。决策树模型在该任务中被广泛应用,因为它直观易懂,能够处理分类问题,并且可以解释各个特征对预测结果的影响。 **决策树模型简介**: - 决策树是一种监督学习算法,它模拟了人类做出决策的过程,将数据集分割成多个小的子集,每个子集对应树的一个分支,直到达到某个终止条件(如达到最小样本数或所有样本属于同一类别)。 - 在泰坦尼克号案例中,决策树会根据乘客的年龄、性别、票价等级、登船地点等特征,预测他们在沉船事故中的生存概。 **模型构建步骤**: 1. 数据加载和预处理:获取包含乘客基本信息的CSV文件,清洗缺失值、异常值,以及对非数值特征进行编码。 2. 特征选择:分析特征与存活的相关性,可能保留性别、年龄、社会经济地位等关键特征。 3. 模型训练:使用训练数据集构建决策树,调整参数如最大深度、最小样本分裂等。 4. 模型评估:用交叉验证的方式,在测试数据上计算准确、精度、召回等指标。 5. 模型优化:可能使用集成方法如随机森林或梯度提升树,提高预测性能。 **Kaggle上的应用**: - 在Kaggle上,参赛者会提交预测结果,Kaggle会根据给定的标准(如log损失或准确)进行评分,排名前几位的解决方案通常会分享他们的代码和思路,供其他人学习。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值