第四部分:可视化(15分)
数据:
有泰坦尼克号 公开数据集合数据:共有891行、12列。这代表本训练集共有891条数据,每条数据有12类信息。包括:
• PassengerId => 乘客ID
• Survived => 获救情况(1为获救,0为未获救)
• Pclass => 乘客等级(1/2/3等舱位)
• Name => 乘客姓名
• Sex => 性别
• Age => 年龄
• SibSp => 堂兄弟/妹个数
• Parch => 父母与小孩个数
• Ticket => 船票信息
• Fare => 票价
• Cabin => 客舱
• Embarked => 登船港口
数据链接及提取码
:
链接:https://pan.baidu.com/s/1WIUfb1GZnXGhka718BMYQA
提取码:dhf3
要求用以上数据集合做可视化数据分析:
1、 利用柱状图各乘客等级的获救与遇难情况(5分)
2、通过一张大图里分列几个小图来展示获救乘客的各种属性(10分)
了解到乘客的信息,获救人数与未获救人数比较,不同获救乘客等级之间获救人数比较,获救人员各年龄段分布,各口岸上船的乘客比较。如下:
1)柱状图展示 获救与遇难信息(3)
2)柱状图展示 乘客等级与人数信息(2)
3)散点图 展示 年龄与获救分布情况(5)
4)折线图 展示 各等级的乘客年龄分布(3)
5)柱状图 展示 各登船口岸上船人数(2)
代码
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
from pandas import Series,DataFrame
f = open(r'D:\BDA\大数据比赛数据\Titanic.csv','r',encoding='utf-8')
data1 = pd.read_csv(f)
data1.head()
figure,ax = plt.subplots(3,2,figsize=(14,14))
#柱状图一
y1 = data1.groupby('Survived')['Survived'].count().values
x1 = [0,1]
names = ['未获救','获救']
ax[0][0].bar(x1,y1,color='g',tick_label=names)
for a,b in zip(x1,y1):
ax[0][0]