pandas数据处理之绘图的实现


Posted in Python onJune 15, 2020

Pandas是Python中非常常用的数据处理工具,使用起来非常方便。它建立在NumPy数组结构之上,所以它的很多操作通过NumPy或者Pandas自带的扩展模块编写,这些模块用Cython编写并编译到C,并且在C上执行,因此也保证了处理速度。

今天我们就来体验一下它的强大之处。

1.创建数据

使用pandas可以很方便地进行数据创建,现在让我们创建一个5列1000行的pandas DataFrame:

mu1, sigma1 = 0, 0.1
mu2, sigma2 = 0.2, 0.2
n = 1000df = pd.DataFrame(
  {
    "a1": pd.np.random.normal(mu1, sigma1, n),
    "a2": pd.np.random.normal(mu2, sigma2, n),
    "a3": pd.np.random.randint(0, 5, n),
    "y1": pd.np.logspace(0, 1, num=n),
    "y2": pd.np.random.randint(0, 2, n),
  }
)
  • a1和a2:从正态(高斯)分布中抽取的随机样本。
  • a3:0到4中的随机整数。
  • y1:从0到1的对数刻度均匀分布。
  • y2:0到1中的随机整数。

生成如下所示的数据:

pandas数据处理之绘图的实现

2.绘制图像

Pandas 绘图函数返回一个matplotlib的坐标轴(Axes),所以我们可以在上面自定义绘制我们所需要的内容。比如说画一条垂线和平行线。这将非常有利于我们:

1.绘制平均线

2.标记重点的点

import matplotlib.pyplot as plt
ax = df.y1.plot()
ax.axhline(6, color="red", linestyle="--")
ax.axvline(775, color="red", linestyle="--")
plt.show()

pandas数据处理之绘图的实现

我们还可以自定义一张图上显示多少个表:

fig, ax = plt.subplots(2, 2, figsize=(14,7))
df.plot(x="index", y="y1", ax=ax[0, 0])
df.plot.scatter(x="index", y="y2", ax=ax[0, 1])
df.plot.scatter(x="index", y="a3", ax=ax[1, 0])
df.plot(x="index", y="a1", ax=ax[1, 1])
plt.show()

pandas数据处理之绘图的实现

3.绘制直方图

Pandas能够让我们用非常简单的方式获得两个图形的形状对比:

df[["a1", "a2"]].plot(bins=30, kind="hist")
plt.show()

pandas数据处理之绘图的实现

还能允许多图绘制:

df[["a1", "a2"]].plot(bins=30, kind="hist", subplots=True)
plt.show()

pandas数据处理之绘图的实现

当然,生成折线图也不在画下:

df[['a1', 'a2']].plot(by=df.y2, subplots=True)
plt.show()

pandas数据处理之绘图的实现

4.线性拟合

Pandas还能用于拟合,让我们用pandas找出一条与下图最接近的直线:

pandas数据处理之绘图的实现

最小二乘法计算和该直线最短距离:

df['ones'] = pd.np.ones(len(df))
m, c = pd.np.linalg.lstsq(df[['index', 'ones']], df['y1'], rcond=None)[0]

根据最小二乘的结果绘制y和拟合出来的直线:

df['y'] = df['index'].apply(lambda x: x * m + c)
df[['y', 'y1']].plot()
plt.show()

pandas数据处理之绘图的实现

到此这篇关于pandas数据处理之绘图的实现的文章就介绍到这了,更多相关pandas 绘图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python文件夹与文件的相关操作(推荐)
Jul 25 Python
python中的闭包函数
Feb 09 Python
python3调用R的示例代码
Feb 23 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
May 25 Python
Python3实现的简单工资管理系统示例
Mar 12 Python
Python3常见函数range()用法详解
Dec 30 Python
TensorFlow设置日志级别的几种方式小结
Feb 04 Python
Django 设置多环境配置文件载入问题
Feb 25 Python
python环境下安装opencv库的方法
Mar 05 Python
python 决策树算法的实现
Oct 09 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 Python
django上传文件的三种方式
Apr 29 Python
keras中的loss、optimizer、metrics用法
Jun 15 #Python
使用keras实现Precise, Recall, F1-socre方式
Jun 15 #Python
基于python和flask实现http接口过程解析
Jun 15 #Python
基于nexus3配置Python仓库过程详解
Jun 15 #Python
Keras官方中文文档:性能评估Metrices详解
Jun 15 #Python
在keras里面实现计算f1-score的代码
Jun 15 #Python
Python流程控制语句的深入讲解
Jun 15 #Python
You might like
按上下级层次关系输出内容的PHP代码
2010/07/17 PHP
Yii2使用自带的UploadedFile实现的文件上传
2016/06/20 PHP
PHP判断JSON对象是否存在的方法(推荐)
2016/07/06 PHP
Yii2简单实现多语言配置的方法
2016/07/23 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
Ext JS 4实现带week(星期)的日期选择控件(实战一)
2013/08/21 Javascript
js中replace的用法总结
2013/12/27 Javascript
中止javascript执行的方法
2014/02/14 Javascript
jquery 新建的元素事件绑定问题解决方案
2014/06/12 Javascript
JavaScript学习笔记整理之引用类型
2016/01/22 Javascript
JS中对象与字符串的互相转换详解
2016/05/20 Javascript
JavaScript 数组- Array的方法总结(推荐)
2016/07/21 Javascript
jquery实现拖动效果
2016/08/10 Javascript
Javascript 获取鼠标当前的位置实现方法
2016/10/27 Javascript
微信小程序 登录实例详解
2017/01/16 Javascript
微信小程序 setData的使用方法详解
2017/04/20 Javascript
JavaScript实现短信倒计时60s
2017/10/09 Javascript
浅谈FastClick 填坑及源码解析
2018/03/02 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
vue请求数据的三种方式
2020/03/04 Javascript
[02:16]完美世界DOTA2联赛PWL S3 集锦第三期
2020/12/21 DOTA
Python判断文件和文件夹是否存在的方法
2015/05/21 Python
python爬虫入门教程--利用requests构建知乎API(三)
2017/05/25 Python
Python DataFrame设置/更改列表字段/元素类型的方法
2018/06/09 Python
python将txt文件读入为np.array的方法
2018/10/30 Python
python 求定积分和不定积分示例
2019/11/20 Python
Django后端分离 使用element-ui文件上传方式
2020/07/12 Python
Python selenium环境搭建实现过程解析
2020/09/08 Python
Django Form常用功能及代码示例
2020/10/13 Python
SCDKey德国:全球领先的数字游戏市场
2019/04/09 全球购物
Notino罗马尼亚网站:购买香水和化妆品
2019/07/20 全球购物
亚洲最大的运动鞋寄售店:KicksCrew
2020/11/26 全球购物
华为c/c++笔试题
2016/01/25 面试题
预备党员思想汇报
2014/01/08 职场文书
红色电影观后感
2015/06/18 职场文书
2016习总书记系列重要讲话心得体会
2016/01/15 职场文书