数据分析案例:泰坦尼克号上的船员是否获救预测

整体流程

1.数据读取
2.特征理解分析
3.数据清洗与预处理
4.建立模型

准备工作

第一步:理解数据,分析每个字段的意思

在这里插入图片描述
PassengerID 乘客唯一编号(无关)
Pclass 船舱等级
Survived 是否获救
Sex 二值属性(female、male)
SibSp 一起上船的兄弟姐妹的个数
Parch 一起上船的老人和孩子的数量
Ticket 船票的编号(可能无关)
Fare 船票的价格
Cabin 住的船舱的编号(可能无关,不知道船舱和具体位置分布,是否靠窗?)
Embarked 在哪个码头上岸?SCQ码头(可能无关,做后这个名仕有关的,因为有的码头登上的有钱人比较多,他们购买一二等舱船票,或者登船的性别不均衡,而船舱等级和性别影响最后的获救几率,所以这个特征不能丢失)

第二步:导入相关的库:

1.numpy科学计算库
2.pandas数据分析处理库
3.matplotlib可视化库
4.seaborn可视化库,封装在matplotlib基础之上
5.scikit-learn机器学习库

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
#过滤掉警告
import warnings
warnings.filterwarnings("ignore")

#指定画图风格
plt.style.use("fivethirtyeight")
%matplotlib inline

数据分析操作

1.读取数据
data = pd.read_csv("train-Copy1.csv")
data.head()

在这里插入图片描述
默认显示前5行的数据,可以在head()的括号里面指定参数

2.统计每列缺失值的个数
data.isnull().sum()

在这里插入图片描述
可以看到Age的缺失值比较少(相对于这个数据量来说),可以进行缺失值填充;而Cabin这一列的缺失值太多了,有根据上面的分析跟是否获救好像没什么关系,所以直接将这一列扔掉

3.整体看看数据的一些统计值
data.describe()

在这里插入图片描述
这里过滤掉了一些有字符串数值的属性,因为字符串是不能计算平均值这些统计指标的。

4.绘图查看获救的比例
f, ax = plt.subplots(1, 2, figsize = (18, 8))
data['Survived'].value_counts().plot.pie(explode=[0, 0.1], autopct = '%1.1f%%', ax = ax[0],shadow = True)
ax[0].set_title('Survived')
ax[0].set_ylabel('')
sns.countplot('Survived', data = data, ax = ax[1])
ax[1].set_title('Survived')
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值