python使用Pandas处理数据的方法

发布时间:2020-06-17 13:50:10

来源:亿速云

阅读:119

作者:鸽子

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中的随机整数。

生成如下所示的数据:

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()

我们还可以自定义一张图上显示多少个表: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()

3.绘制直方图

Pandas能够让我们用非常简单的方式获得两个图形的形状对比:df[["a1", "a2"]].plot(bins=30, kind="hist")

plt.show()

还能允许多图绘制:df[["a1", "a2"]].plot(bins=30, kind="hist", subplots=True)

plt.show()

当然,生成折线图也不在画下:df[['a1', 'a2']].plot(by=df.y2, subplots=True)

plt.show()

4.线性拟合

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()

python的pandas方法_python使用Pandas处理数据的方法相关推荐

  1. python接口自动化参数化_Python读取txt文件数据的方法(用于接口自动化参数化数据)...

    小试牛刀: 1.需要python如何读取文件 2.需要python操作list 3.需要使用split()对字符串进行分割 代码运行截图 : 代码(copy) #encoding=utf-8 #1.r ...

  2. python爬虫清洗方法_Python 7种超实用的数据清洗方法,这你一定要把握

    数据清洗是数据分析的必备环节,在进行分析过程中,会有很多不符合分析要求的数据,例如重复.错误.缺失.异常类数据. 一. 重复值处理 数据录入过程.数据整合过程都可能会产生重复数据,直接删除是重复数据处 ...

  3. pythonrequests发送数据_在python中使用requests 模拟浏览器发送请求数据的方法

    在python中使用requests 模拟浏览器发送请求数据的方法 如下所示: import requests url='http://####' proxy={'http':'http://#### ...

  4. python导入pandas具体步骤方法_python导入pandas具体步骤方法

    Pandas最初被作为金融数据分析工具而开发出来,因此,pandas为时间序列分析提供了很好的支持. Pandas的名称来自于面板数据(panel data)和python数据分析(data anal ...

  5. python导入pandas具体步骤方法_python导入pandas具体步骤方法-

    Pandas最初被作为金融数据分析工具而开发出来,因此,pandas为时间序列分析提供了很好的支持. Pandas的名称来自于面板数据(panel data)和Python数据分析(data anal ...

  6. python获取列表长度方法_python - 在Pandas df列中获取有关列表长度(平均长度,最大长度等)的统计信息的大多数pandas-onic方法 - 堆栈内存溢出...

    我想获取有关pandas df列中列表长度的统计信息,例如平均长度,最低,最高,标准差等. 例: import pandas as pd dfp = pd.DataFrame( {'trial_num ...

  7. python pandas读取csv_pandas读取csv文件数据的方法及注意点

    pandas是一个高效的数据分析工具.基于其高度抽象的数据结构DataFrame(点击这里了解DataFrame数据结构),几乎可以对数据进行任何你想要的操作. 由于现实世界中数据源的格式非常多,pa ...

  8. python list元素合并_python list 合并连接字符串的方法

    python list 合并连接字符串的方法 更新时间:2013年03月09日 22:02:18 作者: python 列表合并字符串,我们一般会用到字符串的join方法来操作.下面通过代码的形式,详 ...

  9. Pandas中常见的20多种数据筛选方法,116张图详解 | 图解Pandas-图文第8篇

    01写在前面 大家好,我是阳哥,欢迎来到「Python数据之道」. 本次是<图解Pandas>系列图文内容的 第 08 篇,主要介绍 Pandas 中常见的数据筛选 . 本文是付费阅读文章 ...

最新文章

  1. bzoj 1877: [SDOI2009]晨跑 (网络流)
  2. 战斗民族开源神器。ClickHouse为什么能够征服各个大厂?
  3. 斯特林发动机图纸尺寸_南昌教学模型订做,航空发动机模型_境海模型
  4. 2014年去哪儿网笔试题--一个10*10的矩阵(可以理解为棋盘),随时生成一组数据填入矩阵,任何一个位置的数字除4进行计算,按余数着色......
  5. Asciidoc中缩进的使用
  6. [转载] 使用python完成冒泡排序_使用python实现-冒泡排序
  7. 如何选购一款好的人事档案管理系统
  8. Python数据分析、挖掘常用工具
  9. emc re 整改 超标_两种常见EMC整改流程
  10. Linux内核中的PID散列表实例
  11. 用swift写的一款小游戏,模仿的僵尸危机
  12. 北京1954坐标转为经纬度坐标
  13. win7提示由于系统注册表文件丢失或损坏,无法开机
  14. nginx日志中$request_body 十六进制字符(\\x22) 引号问题处理记录
  15. Android初窥门径
  16. python 有趣包_一些有趣且鲜为人知的 Python 特性
  17. android读取assets下的.json文件,并且转化为实体类
  18. OpenCV-用图像处理作出素描图(给你的另一半试试吧)
  19. 自主研发项目三之微信上门洗车系统
  20. python做图像识别该学什么专业,郑大自动化学生来达内培训学Python技术,获1.2万月薪担任AI图像识别...

热门文章

  1. php5.5 mysql密码无法_php – Mysql无法连接 – 访问被拒绝(使用密码是)
  2. html5图片加载不了,webView加载html图片遇到的问题解决
  3. 微信小程序电子画板canvas2d签名小程序插件绝对可用
  4. CTCLoss 学习笔记
  5. ‘mmdet\ops\nms\src/soft_nms_cpu.pyx‘ doesn‘t match any files
  6. java OpenCV 图片清晰度、色偏和亮度检测
  7. all the input arrays must have same number of dimensions
  8. randaugment
  9. KL 损失的边界框回归
  10. 64 DLL动态链接库换一台电脑就不能加载