数据可视化
以泰坦尼克号为例
# 加载所需的库
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 导入result.csv这个文件
text = pd.read_csv(r'result.csv')
text.head()
import matplotlib.pyplot as plt
#可视化展示泰坦尼克号数据集中男女中生存人数分布 情况
sex = text.groupby('Sex')['Survived'].sum()
sex.plot.bar()
plt.title('survived_count')
plt.show()
从图中可以清楚的看到女性的生存率大于男性,符合电影情节。
#可视化展示泰坦尼克号数据集中男女中生存人与死亡 人数的比例图
text.groupby(['Sex','Survived'])
['Survived'].count().unstack().plot(kind='bar',stacked='True')
plt.title('survived_count')
plt.ylabel('count')
其中,0表示死亡,1表示生存,在这里可以看到女性种的生存率较高。
#展示泰坦尼克号数据集中不同票价的人生存和 死亡人数分布情况
fare_sur = text.groupby(['Fare'])['Survived'].value_counts().sort_values(ascending=False)
# 排序后绘折线图
fig = plt.figure(figsize=(20, 18))
fare_sur.plot(grid=True)
plt.legend()
plt.show()
#可视化展示泰坦尼克号数据集中不同仓位等级的人生 存和死亡人员的分布情况
pclass_sur = text.groupby(['Pclass'])['Survived'].value_counts()
import seaborn as sns
sns.countplot(x="Pclass", hue="Survived", data=text)
#展示泰坦尼克号数据集中不同年龄的人生存与 死亡人数分布情况
facet = sns.FacetGrid(text, hue="Survived",aspect=3)
facet.map(sns.kdeplot,'Age',shade= True)
facet.set(xlim=(0, text['Age'].max()))
facet.add_legend()
#展示泰坦尼克号数据集中不同仓位等级的人年 龄分布情况
text.Age[text.Pclass == 1].plot(kind='kde')
text.Age[text.Pclass == 2].plot(kind='kde')
text.Age[text.Pclass == 3].plot(kind='kde')
plt.xlabel("age")
plt.legend((1,2,3),loc="best")