泰坦尼克号数据分析报告
数据链接:https://www.kaggle.com/c/titanic/data
由图可知,在age/cabin/Embark 字段中有缺失,在之后的分析中会做相应的处理。
由图2.3.4可知,共有人数891人,男性577人,女性314 人,生还人数有342人占总人数的38%,其中男性占109人,女性占233人。死亡人数有549人占总人数的62%,其中男性 468人,女性81人,根据上图提供数据可知女性生还比例大于男性生还比例。
图(2)
图(3)
图(4)
3.女性生还概率与外部因素(舱位,年龄,港口)之间的关系。
不同舱位间女性生还数量如5,6图所示,生还概率依次为97%,92%,50%。初步发现随着舱位的优先级上升存活概率随之增加,结合实际考虑,第三舱位更接近水平面首先浸入水中,第一舱位最慢,则留给第一舱位的反应时间是最多的。所以可以解释为何舱位等级越高,存活概率越大的问题。
图(5)
图(6)
年龄字段有缺失,分别用各个舱位的女性平均数数进行填充。如图7.8.9。
df1=df[(df['Sex']=='female') & (df['Age']!='NaN')]
age=round(df1.groupby(by='Pclass')['Age'].mean(),1)
df1.set_index('Pclass',inplace=True)
df1['Age'].fillna(age,inplace=True)
图(7) 图(8)
填充完毕,先来看一个在此次事故中所有女性的年龄分布图,由图可知,16岁到32岁之间人数最多,占到了所有女性的50%,中年人33岁到44次之,然后是0岁到16岁的小孩子,最后是48岁到63岁的老年人。
图(10)
图(11)
younger=df[(df['Age']>16)&(df['Age']<=34)]
younger=younger.groupby('Survived')['Survived'].count()
plt.subplot(142)
plt.pie(younger,labels=younger.index,autopct='%1.0f%%',shadow=True)
plt.title('younger survive')
#2图
middle_age_people=df[(df['Age']>34)&(df['Age']<50)]
middle_age_people=middle_age_people.groupby('Survived')['Survived'].count()
plt.subplot(143)
plt.pie(middle_age_people,labels=middle_age_people.index,autopct='%1.0f%%',shadow=True)
plt.title('middle people survive')
#3图
old_people=df[(df['Age']>56)&(df['Age']<=72)]
old_people=old_people.groupby('Survived')['Survived'].count()
plt.subplot(144)
plt.pie(old_people,labels=old_people.index,autopct='%1.0f%%',shadow=True)
plt.title('old_people survive')
#4图
plt.show()
如图11.12所示,儿童的逃生概率是大于其他年龄分组的,尽管对于儿童的年龄限定可能存在歧义,但仍旧可以看出儿童的逃生率是大于其他年龄段的人的。且根据之前的图我们得到女性的逃生率也是远大于男性。因此。假设成立。
由图13可知,Embarked存在两个缺失值,港口为[Q,S,C],采用numpy 库随机数选择的方法进行对缺失值进行填充如图14
print(df[df['Embarked'].isnull()])
a=['Q','S','C']
n=np.random.randint(0,len(a))
df['Embarked'].fillna(a[n],inplace=True)
#设置随机数
图(13)
图(15)
图(16)
由图15.16可知,C港口的生还女性比例是最多的,达到了88%,接下来分别是Q港口的76%,S港口的69%。
综上可知,我们结合了三个方面来对泰坦尼克号事件对女性生还率进行分析,分别是港口,舱位,年龄。根据初步分析,可以得知,女性的生还率是远远大于男性生还率,并且知道,舱位等级越高,则生还的可能性越大。通过数据分析,我们验证了在此次事件中,让妇女和儿童先走的情况是真实存在的。虽然对儿童的年龄定义存在歧义,但对儿童生还的概率影响较小,在女性年龄的分布图中得知年龄处于[16,32]的女性更容易生还。1除此之外,在C港口登船的女性生还率是大于在其他舱口。因此我们可以简单的断定:在C港口登船,并且上船后在第一舱位的在[16,32]年龄段的女性存活率比其他更高。