泰坦尼克号数据分析

 变量分布统计

import pandas as pd
import matplotlib.pyplot as plt
titanic = pd.read_csv("../data/titanic.csv")
#1.获救情况分布,共891位乘客,仅有300多位乘客幸免于难,占比38%
titanic['Survived'].value_counts().plot(kind='bar',color='yellow',title='Rescue situation', rot=360)
plt.show()
#2.性别分布,共891位乘客,男性乘客就有577位,占比达64.76%
titanic['Sex'].value_counts().plot(kind='bar',color='pink',title='Gender distribution', rot=360)
plt.show()
#3.船舱分布,其中三等舱人数最多,一等舱人口次之。一等舱约占1/4,三等舱约占1/2
titanic['Pclass'].value_counts().plot(kind='bar',color='green',title='Pclass distribution', rot=360)
plt.show()
#4.年龄分布,乘客的年龄都集中在20-40岁之间
titanic['Age'].plot(kind='hist',color='red',title='Age distribution')
plt.show()

 探索变量之间的关系

#构造Sex与Survived均值的条形图
sex_pivot = titanic.pivot_table(index="Sex",values="Survived")
sex_pivot.plot.bar(rot=360)
plt.show()
#构造Class与Survived均值的条形图
class_pivot = titanic.pivot_table(index="Pclass",values="Survived")
class_pivot.plot.bar(rot=360)
plt.show()
#构造SibSp与Survived均值的条形图
SibSp_pivot = titanic.pivot_table(index="SibSp",values="Survived")
SibSp_pivot.plot.bar(rot=360)
plt.show()
#构造Parch与Survived均值的条形图
Parch_pivot = titanic.pivot_table(index="Parch",values="Survived")
Parch_pivot.plot.bar(rot=360)
plt.show()

可以看出在获救人群中女性高于男性,一等舱乘客比例高于二等和三等舱,具有1-2个堂兄弟姐妹获救的概率最高,父母/孩子有1和或3个幸存率最高。

探索多个变量与Survived的关系

# 探索多个变量与Survived的关系
import seaborn as sns
g = sns.FacetGrid(titanic,col='Survived')
g.map(plt.hist,'Age',bins=20)
# 探索年龄与获救人数的关系:
grid = sns.FacetGrid(titanic, col='Survived', row='Pclass', height=2.2,aspect=1.6)
grid.map(plt.hist, 'Age', alpha=0.5, bins=20)
# 探索年龄、舱位与获救人数的关系:
grid = sns.FacetGrid(titanic, row='Embarked', height=2.2, aspect=1.6)
grid.map(sns.pointplot, 'Pclass', 'Survived','Sex',palette='deep',order=[1,2,3],hue_order=['male','female'])
grid.add_legend()
# 探索登船港口、舱位、性别与获救比例的关系:
grid = sns.FacetGrid(titanic, row='Embarked', col='Survived',height=2.2, aspect=1.6)
grid.map(sns.barplot, 'Sex', 'Fare', alpha=0.5, ci=None, order=['female','male'])
grid.add_legend()
plt.show()

首先探索年龄与获救人数的关系:

  • 在获救的人群中,20-40岁的人占比最多;
  • 在遇难的人群中,18-30岁的人占比最多。

探索年龄、舱位与获救人数的关系:

  • 一等舱获救的比例明显高于其他舱位;
  • 一等舱和二等舱的孩子基本上都获救了;
  • ...

探索登船港口、舱位、性别与获救比例的关系:

  • 一等舱中从港口Q和港口S登船的女性基本上都获救了;
  • 从C港口登船的男性获救比例很高;
  • ...

同样,我们还可以加上探索登船口,性别、是否幸存与船票费用之间的关系。

明显可以看出:

  • 从S和C港口登船的人中,获救的人群船票明显更贵;
  • ...
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Jupyter是一个常用的交互式编程环境,可以用于进行数据分析和可视化。泰坦尼克号是一艘著名的沉船,其数据集包含了船上乘客的信息。通过对泰坦尼克号据的分析,我们可以了解和预测乘客的生存情况和其他相关因素。 在进行泰坦尼克号数据分析时,我们可以首先导入数据集,并对据进行初步的展示和观察。我们可以查看数据集的各个列名和据类型,以及了解数据集是否有缺失值等问题。 接下来,我们可以对数据集进行清洗和预处理。这可能包括处理缺失值,删除不需要的列或行,以及对据进行转换或编码等操作。例如,我们可以通过填充或删除缺失值来处理数据集的缺失信息问题。我们还可以将分类变量进行独热编码,以便后续的分析和建模。 在据预处理完成后,我们可以进行进一步的分析。我们可以使用统计方法和可视化工具来了解各个变量之间的关系,并探索生存率与其他因素(如性别、年龄等)之间的关系。我们可以绘制柱状图、饼图、箱图等图表来直观地展示数据集的特征和趋势。 此外,我们还可以使用机器学习算法对泰坦尼克号据进行建模和预测。我们可以使用分类算法(如逻辑回归、决策树等)来预测乘客的生存情况。通过训练模型并对其进行评估,我们可以了解不同因素对生存率的影响,并预测新乘客的生存情况。 而言之,通过对泰坦尼克号据的分析,我们可以更深入地了解这个历史事件,并通过数据分析和建模方法来预测乘客的生存情况和其他相关因素。Jupyter提供了一个交互式的环境,使得数据分析和可视化更加方便和直观。 ### 回答2: 泰坦尼克号数据分析是基于Jupyter Notebook进行的一项分析工作。Jupyter Notebook是一个开源的交互式编程环境,可以用于数据分析、可视化和机器学习等任务。 在泰坦尼克号数据分析,我们可以通过使用Jupyter Notebook来加载和处理据,并进行各种统计和可视化操作。首先,我们需要导入所需的Python库,如pandas和matplotlib等。然后,我们可以使用pandas库读取泰坦尼克号数据集,并对据进行初步的观察和清理,如查看据的列名、样本值、缺失值等。 接下来,我们可以进行一些基本的统计分析,如计算乘客的生存率、船上不同等级舱位的人数和生存率等。这些分析结果可以通过使用matplotlib库进行可视化,如柱状图、饼图等。 此外,我们还可以使用Jupyter Notebook来进行更深入的数据分析,如特征工程、机器学习模型的构建和评估等。通过选择适当的特征和模型,我们可以预测乘客的生存情况,并对模型进行评估和优化。 之,Jupyter Notebook提供了一个便捷的环境,可以对泰坦尼克号据进行分析和可视化。通过使用各种Python库和机器学习算法,我们可以深入了解据,并得出有关乘客生存情况的结论。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值