专栏名称: 大数据挖掘DT数据分析
实战数据资源提供。数据实力派社区,手把手带你玩各种数据分析,涵盖数据分析工具使用,数据挖掘算法原理与案例,机器学习,R语言,Python编程,爬虫。如需发布广告请联系: hai299014
目录
相关文章推荐
51好读  ›  专栏  ›  大数据挖掘DT数据分析

Kaggle赛题解析:逻辑回归预测模型实现

大数据挖掘DT数据分析  · 公众号  · 大数据  · 2017-01-12 23:46

正文

请到「今天看啥」查看全文


, 3 ),( 0 , 0 )) # 在一张大图里分列几个小图 data_train.Survived.value_counts().plot(kind= 'bar' ) # 柱状图 plt.title( u"获救情况 (1为获救)" ) # 标题 plt.ylabel( u"人数" )   plt.subplot2grid(( 2 , 3 ),( 0 , 1 )) data_train.Pclass.value_counts().plot(kind= "bar" ) plt.ylabel( u"人数" ) plt.title( u"乘客等级分布" ) plt.subplot2grid(( 2 , 3 ),( 0 , 2 )) plt.scatter(data_train.Survived, data_train.Age) plt.ylabel( u"年龄" ) # 设定纵坐标名称 plt.grid(b= True , which= 'major' , axis= 'y' ) plt.title( u"按年龄看获救分布 (1为获救)" ) plt.subplot2grid(( 2 , 3 ),( 1 , 0 ), colspan= 2 ) data_train.Age[data_train.Pclass == 1 ].plot(kind= 'kde' )   data_train.Age[data_train.Pclass == 2 ].plot(kind= 'kde' ) data_train.Age[data_train.Pclass == 3 ].plot(kind= 'kde' ) plt.xlabel( u"年龄" ) # plots an axis lable plt.ylabel( u"密度" ) plt.title( u"各等级的乘客年龄分布" ) plt.legend(( u'头等舱' , u'2等舱' , u'3等舱' ),loc= 'best' ) # sets our legend for our graph. plt.subplot2grid(( 2 , 3 ),( 1 , 2 )) data_train.Embarked.value_counts().plot(kind= 'bar' ) plt.title( u"各登船口岸上船人数" ) plt.ylabel( u"人数" )   plt.show()

bingo,图还是比数字好看多了。所以我们在图上可以看出来,被救的人300多点,不到半数;3等舱乘客灰常多;遇难和获救的人年龄似乎跨度都很广;3个不同的舱年龄总体趋势似乎也一致,2/3等舱乘客20岁多点的人最多,1等舱40岁左右的最多(→_→似乎符合财富和年龄的分配哈,咳咳,别理我,我瞎扯的);登船港口人数按照S、C、Q递减,而且S远多于另外俩港口。

这个时候我们可能会有一些想法了:

  • 不同舱位/乘客等级可能和财富/地位有关系,最后获救概率可能会不一样

  • 年龄对获救概率也一定是有影响的,毕竟前面说了,副船长还说『小孩和女士先走』呢

  • 和登船港口是不是有关系呢?也许登船港口不同,人的出身地位不同?

口说无凭,空想无益。老老实实再来统计统计,看看这些属性值的统计分布吧。

4.2 属性与获救结果的关联统计

#看看各乘客等级的获救情况fig = plt.figure()
fig.set(alpha=0.2)  # 设定图表颜色alpha参数Survived_0 = data_train.Pclass[data_train.Survived == 0].value_counts()
Survived_1 = data_train.Pclass[data_train.Survived == 1].value_counts()
df=pd.DataFrame({u'获救':Survived_1, u'未获救':Survived_0})
df.plot(kind='bar', stacked=True)
plt.title(u"各乘客等级的获救情况")
plt.xlabel(u"乘客等级") 
plt.ylabel(u"人数") 
plt.show()

啧啧,果然,钱和地位对舱位有影响,进而对获救的可能性也有影响啊←_←
咳咳,跑题了,我想说的是,明显等级为1的乘客,获救的概率高很多。恩,这个一定是影响最后获救结果的一个特征。

#看看各性别的获救情况fig = plt.figure()
fig.set(alpha=0.2)  # 设定图表颜色alpha参数Survived_m = data_train.Survived[data_train.Sex == 'male'].value_counts()
Survived_f = data_train.Survived[data_train.Sex == 'female'].value_counts()
df=pd.DataFrame({u'男性':Survived_m, u'女性':Survived_f})
df.plot(kind='bar', stacked=True)
plt.title(u"按性别看获救情况")
plt.xlabel(u"性别") 
plt.ylabel(u"人数")
plt.show()






请到「今天看啥」查看全文