1 初心
本系列笔记用于记录自己第一次参加Datawhale的组队学习。自己马上开启研究生学习生涯,因此熟练掌握数据分析这一重要技能对未来的学习能够提供很大的帮助,Datawhale团队在项目初衷里说数据分析是一个要从一堆数字中看到真相的过程。学会操作数据只是数据分析的一半功力,剩下的另一半要用我们的大脑,多多思考,多多总结,更要多动手,实打实的的敲代码。所以也希望在学习这门课时,多去推理,多去问问为什么;多多练习,确保理论实践结合起来,在课程结束的时候一定会有大收获。
因此希望自己再接下来的11天里面能够实事求是、脚踏实地完成各项任务,提高自己的硬实力。
特别喜欢一句话:也许不负光阴就是最好的努力,而努力就是最好的自己。
学习内容: 回顾学习完第一章,我们对泰坦尼克号数据有了基本的了解,也学到了一些基本的统计方法,第二章中我们学习了数据的清理和重构,使得数据更加的易于理解;今天我们要学习的是第二章第三节:数据可视化,主要给大家介绍一下Python数据可视化库Matplotlib,在本章学习中,你也许会觉得数据很有趣。在打比赛的过程中,数据可视化可以让我们更好的看到每一个关键步骤的结果如何,可以用来优化方案,是一个很有用的技巧。
2 数据可视化
开始之前导入numpy、pandas包和数据
%matplotlib inline
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
导入result.csv这个文件
text = pd.read_csv(r'result.csv')
text.head()
可视化展示泰坦尼克号数据集中男女中生存人数分布情况(用柱状图试试)。
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')
可视化展示泰坦尼克号数据集中不同票价的人生存和死亡人数分布情况。(用折线图试试)(横轴是不同票价,纵轴是存活人数)
fare_sur = text.groupby(['Fare'])['Survived'].value_counts().sort_values(ascending=False)
fare_sur
排序后绘折线图
fig = plt.figure(figsize=(20, 18))
fare_sur.plot(grid=True)
plt.legend()
plt.show()
排序前绘折线图
fare_sur1 = text.groupby(['Fare'])['Survived'].value_counts()
fare_sur1
fig = plt.figure(figsize=(20, 18))
fare_sur1.plot(grid=True)
plt.legend()
plt.show()
可视化展示泰坦尼克号数据集中不同仓位等级的人生存和死亡人员的分布情况。(用柱状图试试)
pclass_sur = text.groupby(['Pclass'])['Survived'].value_counts()
pclass_sur
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")