Python数据科学实战第三讲作业HW4

浏览: 1448

      先完成作业,再看老师解答,若有不同的地方或出错之处再来修改。


作业要求:

使用auto_ins作如下分析

1、首先对loss重新编码为1/0,有数值为1,命名为loss_flag

2、对loss_flag分布情况进行描述分析

3、分析是否出险和年龄、驾龄、性别、婚姻状态等变量之间的关系(提示:使用分类盒须图,堆叠柱形图)


在spyder中完成第三讲作业HW4:


# In[1]:

#导入模块

from stack2dim import *

####################################################################

# # 1.首先对loss重新编码为1/0,有数值为1,命名为loss_flag

auto_ins['loss_flag'] = auto_ins['Loss'].apply(lambda x: 0 if x==0 else 1)

print(auto_ins,'\n')


# In[2]:  

####################################################################

# # 2.对loss_flag分布情况进行描述分析

import matplotlib.pyplot as plt

auto_ins['loss_flag'].value_counts().plot(kind = 'bar')

plt.title('loss_flag的分布')

plt.ylabel('频数')

plt.xlabel('loss_flag')

plt.show()


图片.png


# In[3]:

###################################################################

# # 3.分析是否出险和年龄、驾龄、性别、婚姻状态等变量之间的关系

#     (提示:使用分类盒须图,堆叠柱形图)

# # 3.1 是否出险与年龄的关系

#--------------------------------------错误绘图方式---------------------------------------------

auto_ins.groupby('loss_flag').Age.mean().plot(kind = 'bar')

plt.title('Age vs loss_flag')

plt.ylabel('Age')

plt.xlabel('loss_flag')

plt.show()


图片.png

'''

据图可看出,出险与年龄无关

'''


# In[4]: 

# # 3.2 是否出险与驾龄的关系

auto_ins.groupby('loss_flag').vAge.mean().plot(kind = 'bar')

plt.title('vAge vs loss_flag')

plt.ylabel('vAge')

plt.xlabel('loss_flag')

plt.show()


图片.png

'''

据图可看出,出险与驾龄有关

'''

#-------------------------------------------------------------------------------------------------


#%%

#------------------------------------------ 正确解答 --------------------------------------------

'''

老师讲解后修改

'''

'''

年龄Age和驾龄exp为连续变量,loss_flag为分类变量,

分类变量与连续变量的描述统计关系图用分类盒须图

'''

fig = plt.figure()

ax1 = fig.add_subplot(1,2,1)

ax2 = fig.add_subplot(1,2,2)

#是否出险与年龄

import seaborn

seaborn.boxplot(x='loss_flag',y='Age',data=auto_ins,ax=ax1)

#是否出险与驾龄

seaborn.boxplot(x='loss_flag',y='exp',data=auto_ins,ax=ax2)


图片.png


'''

据分类盒须图可看出,年龄中位数几乎相等,驾龄中位数相差明显

所以,出险与年龄无关,和驾龄有关

'''

#------------------------------------------------------------------------------------------------


# In[5]:

# # 3.3 是否出险与性别的关系

stack2dim(auto_ins, 'loss_flag','Gender')


图片.png

'''

据图可看出,出险与性别有关

'''


# In[6]:

# # 3.4 是否出险与婚姻状态的关系

stack2dim(auto_ins,'Marital','loss_flag')


图片.png

'''

据图可看出,出险与婚姻状态有关

'''


# In[7]:

# # 3.5 是否出险与汽车出产国的关系

stack2dim(auto_ins, 'loss_flag', 'import')


图片.png

'''

据图可看出,出险与汽车出产国无关

'''


#%%

###################################################################

'''

根据上面的分析,可得出:出险与驾龄、性别、婚姻状态有关

'''

推荐 1
本文由 learn_learning 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册