数据可视化(二)Matplotlib pandas简易入门

来源:互联网 发布:免费越狱软件 编辑:程序博客网 时间:2024/06/15 11:04

本文数据来源https://github.com/fivethirtyeight/data/blob/master/college-majors/recent-grads.csv

本文主要介绍了一下如何简单的探查数据之间的关系

 

原始数据展现(这是一份大学毕业生的薪资调查报告,重要的字段有这些,Major - 专业名称, Major_category - 专业类别, Sample_size - 样本大小, ShareWomen - 女性比重, Total- 该专业的总人数)

import pandas as pdrecent_grads = pd.read_csv('recent-grads.csv')

Image 001

 

直方图

要制作直方图,首先把X轴的值的范围等分成多个间隔,然后数出每个间隔中包含的值的数量,然后把该数量作为Y轴的值。使用方法pandas.DataFrame.hist()函数

#制作工资收入中位数(Median列)的直方图recent_grads.hist(‘Median’)

Image 002

# hist()函数默认是自动分成10等分的,且生成的图中是有网格线的,现在要分成20等分,同时消除网格线recent_grads.hist('Median', bins=20, grid=False)

Image 003

# 其实可以一次性制作多个直方图,layout参数的意思是将两个图分成两行一列,如果没有这个参数,默认会将全部的图放在同一行columns = ['Median','Sample_size']recent_grads.hist(column=columns, layout=(2,1), grid=False)

Image 004

 

箱型图

箱型图是基于五数概括法(最小值,第一个四分位数,第一个四分位数(中位数),第三个四分位数,最大值)的数据的一个图形汇总,还需要用到四分位数间距IQR = 第三个四分位数 - 第一个四分位数。详情请google

制作箱型图使用的是pandas.DataFrame.boxplot()方法

复制代码
import matplotlib.pyplot as plt# 选择两列数据sample_size = recent_grads[['Sample_size', 'Major_category']]# 按照每一个专业类型分类统计sample_size.boxplot(by='Major_category')# 将X轴的坐标文字旋转90度,垂直显示plt.xticks(rotation=90)
复制代码

Image 005

 

多图合并

要想找出多个变量之间的关联,就要把多个变量的变化都做在同一个图上进行比较

复制代码
# 将两个散点图放在一起(按颜色区分),观察是否有关联import matplotlib.pyplot as pltplt.scatter(recent_grads['Unemployment_rate'], recent_grads['Median'], color='red')plt.scatter(recent_grads['ShareWomen'], recent_grads['Median'], color='blue')plt.show()
复制代码

Image 006