Python数据清洗工具之Numpy的基本操作


Posted in Python onApril 22, 2021

Python数据清洗工具之Numpy的基本操作

1. Numpy(Numberical Python)

Anaconda中已经集成了NumPy,可以直接使用。如果想要自行安装的话,可以使用流行的Python
包安装程序 pip 来安装 NumPy,目前使用的是Anaconde的环境进行学习和使用这个库

1.1 这库的安装方法

CMD :pip install numpy
或者使用清华源的镜像库:pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
(直接复制可用)
如果想查看这个库的版本:

import numpy as np
np.__version__

其实很多其他库也可以用这个方法进行查看库的版本

2.Numpy的基础操作

Numpy的操作对象是一个ndarray,所以在使用这个库进行计算的时候需要将数据进行转化

2.1 数组的创建:np.arrary()

np.array 可以把 list,tuple或者其他的序列模式的数据转创建为 ndarray,默认创建一个新的
ndarray

Python数据清洗工具之Numpy的基本操作

我们会发现原来数据里面有int, float型的数据都被转换成相同的类型了,统一转变成float型的数据了,因为Numpy是要求array里面的数据类型是一致的

2.2 N维数组的创建

Numpy不仅可以生成一维数组,也可以生成多维数组。
比如,可以生成如下的二维数组:

Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作

2.3 常用数组

Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作

2.4 线性数组的生成

Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作

2.5 数组的运算

数组的运算时对应位置的元素进行简单的四则运算

Python数据清洗工具之Numpy的基本操作Python数据清洗工具之Numpy的基本操作

这里需要注意的是,数组x和数组y的元素个数是相同的(两者均是元素个数为3的一维数组)
当两者元素个数相同时,可以对各个元素进行算术运算。如果元素个数不同,则会报错,所以保
持元素个数一致非常重要。
此外,Numpy数组不仅可以进行对应元素的算术运算,还可以和单一的数值(标量)组合起来进
行运算(这个功能也被称为广播,后面会详细介绍),比如:

Python数据清洗工具之Numpy的基本操作

会把数据转成数组默认的float的数据类型

2.6 数组的形状变换

我们先定义一个数组

Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作

如果数组的量级比较大,对于计算的时候只知道其他的一个维度数字,则可以使用下面的-1,作为占位符,会自动帮你补齐另外一个维度的信息

Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作

除此之外,还有一种比较常用的数组拉平方法, m.flatten()以及m.ravel(),这两种方法类似

Python数据清洗工具之Numpy的基本操作

3. 数组的索引

Python数据清洗工具之Numpy的基本操作

可以将这个二维的数组看成一个矩阵,3行四列, 通过数字的下标索引进行提取数字,这里的切片操作还是左闭右开的

Python数据清洗工具之Numpy的基本操作
Python数据清洗工具之Numpy的基本操作

4.广播功能

术语广播是指 NumPy 在算术运算期间处理不同形状的数组的能力。
广播可以简单理解为用于不同大小数组的计算(加、减、乘、除等)的一组规则。
如果数组的形状相同,则对相应元素逐个计算,但是如果数组的维度不相同,就需要用到广播机制

Python数据清洗工具之Numpy的基本操作Python数据清洗工具之Numpy的基本操作

Numpy的广播遵循一组严格的规则:

规则1:如果两个数组的维度数不相同,那么小维度数组的形状将会在最左边补1规则2:如果两个数组的形状在任何一个维度上都不匹配,那么数组的形状会沿着维度为1的维度扩展以匹配另外一个数组的形状规则3:如果两个数组的形状在任何一个维度上都不匹配并且没有任何一个维度为1,则会引 发异常无法广播

到此这篇关于Python数据清洗工具之Numpy的基本操作的文章就介绍到这了,更多相关Python数据清洗内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
把MySQL表结构映射为Python中的对象的教程
Apr 07 Python
Python实现删除列表中满足一定条件的元素示例
Jun 12 Python
python模拟事件触发机制详解
Jan 19 Python
获取python文件扩展名和文件名方法
Feb 02 Python
Python网络爬虫中的同步与异步示例详解
Feb 03 Python
Python 使用with上下文实现计时功能
Mar 09 Python
Python实现发送与接收邮件的方法详解
Mar 28 Python
Django开发中的日志输出的方法
Jul 02 Python
Python大数据之从网页上爬取数据的方法详解
Nov 16 Python
wxPython实现整点报时
Nov 18 Python
用Python实现校园通知更新提醒功能
Nov 23 Python
Python semaphore evevt生产者消费者模型原理解析
Mar 18 Python
Python基础之Socket通信原理
python numpy中setdiff1d的用法说明
Apr 22 #Python
一行代码python实现文件共享服务器
Apr 22 #Python
python数据分析之用sklearn预测糖尿病
python文件名批量重命名脚本实例代码
python爬虫之爬取笔趣阁小说
python获取淘宝服务器时间的代码示例
Apr 22 #Python
You might like
PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
2014/11/18 PHP
javascript实现面向对象类的功能书写技巧
2010/03/07 Javascript
jquery Moblie入门—hello world的示例代码学习
2013/01/08 Javascript
jQuery学习之prop和attr的区别示例介绍
2013/11/15 Javascript
JavaScript原型链示例分享
2014/01/26 Javascript
JavaScript中string转换成number介绍
2014/12/31 Javascript
jquery判断复选框选中状态以及区分attr和prop
2015/12/18 Javascript
深入浅析JavaScript面向对象和原型函数
2016/02/06 Javascript
基于Javascript实现返回顶部按钮
2016/02/29 Javascript
jQuery实现页面评论栏中访客信息自动填写功能的方法
2016/05/23 Javascript
checkbox 选中一个另一个checkbox也会选中的实现代码
2016/07/09 Javascript
Node.js websocket使用socket.io库实现实时聊天室
2017/02/20 Javascript
字太多用...代替的方法(两种)
2017/03/15 Javascript
layui弹出层效果实现代码
2017/05/19 Javascript
微信小程序自定义带价格显示日历效果
2018/12/29 Javascript
实例讲解JS中pop使用方法
2019/01/27 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
Node.js fs模块原理及常见用途
2020/10/22 Javascript
[38:30]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场2
2014/05/24 DOTA
[01:02:34]TFT vs VGJ.T Supermajor 败者组 BO3 第二场 6.5
2018/06/06 DOTA
python encode和decode的妙用
2009/09/02 Python
python数据结构之二叉树的建立实例
2014/04/29 Python
python实现用于测试网站访问速率的方法
2015/05/26 Python
mac下pycharm设置python版本的图文教程
2018/06/13 Python
django 发送邮件和缓存的实现代码
2018/07/18 Python
Pytorch mask-rcnn 实现细节分享
2020/06/24 Python
Python性能分析工具py-spy原理用法解析
2020/07/27 Python
如何用 Python 制作 GitHub 消息助手
2021/02/20 Python
俄罗斯街头服装品牌:Black Star Wear
2017/03/01 全球购物
思想作风建设心得体会
2014/10/22 职场文书
党员承诺书格式范文
2015/04/28 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
MySQL的InnoDB存储引擎的数据页结构详解
2022/03/03 MySQL
Python+OpenCV实现图片中的圆形检测
2022/04/07 Python
JAVA长虹键法之建造者Builder模式实现
2022/04/10 Java/Android
Win10鼠标宏怎么设置?win10系统鼠标宏的设置方法
2022/08/14 数码科技