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 相关文章推荐
python处理cookie详解
Feb 07 Python
python调用短信猫控件实现发短信功能实例
Jul 04 Python
python实现定时同步本机与北京时间的方法
Mar 24 Python
pandas系列之DataFrame 行列数据筛选实例
Apr 12 Python
python中嵌套函数的实操步骤
Feb 27 Python
python用match()函数爬数据方法详解
Jul 23 Python
python issubclass 和 isinstance函数
Jul 25 Python
python 利用pywifi模块实现连接网络破解wifi密码实时监控网络
Sep 16 Python
python 图片二值化处理(处理后为纯黑白的图片)
Nov 01 Python
python 实现两个npy档案合并
Jul 01 Python
详解python datetime模块
Aug 17 Python
详解用 python-docx 创建浮动图片
Jan 24 Python
Python基础之Socket通信原理
python numpy中setdiff1d的用法说明
Apr 22 #Python
一行代码python实现文件共享服务器
Apr 22 #Python
python数据分析之用sklearn预测糖尿病
python文件名批量重命名脚本实例代码
python爬虫之爬取笔趣阁小说
python获取淘宝服务器时间的代码示例
Apr 22 #Python
You might like
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
2019/05/28 PHP
用JavaScript实现仿Windows关机效果
2007/03/10 Javascript
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
ASP.NET jQuery 实例13 原创jQuery文本框字符限制插件-TextArea Counter
2012/02/03 Javascript
解决jquery submit()提交表单提示:f[s] is not a function
2013/01/23 Javascript
jQuery隔行变色与普通JS写法的对比
2013/04/21 Javascript
解析dom中的children对象数组元素firstChild,lastChild的使用
2013/07/10 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
jquery比较简洁的软键盘特效实现方法
2015/03/19 Javascript
一个简单不报错的summernote 图片上传案例
2016/07/11 Javascript
JavaScript数据类型转换的注意事项
2016/07/31 Javascript
JS简单获取及显示当前时间的方法
2016/08/03 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
JS正则表达式学习之贪婪和非贪婪模式实例总结
2016/12/26 Javascript
JavaScript数组_动力节点Java学院整理
2017/06/26 Javascript
Vuejs实现购物车功能
2017/11/05 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
jQuery插件simplePagination的使用方法示例
2020/04/28 jQuery
微信小程序 获取手机号 JavaScript解密示例代码详解
2020/05/14 Javascript
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
利用python 更新ssh 远程代码 操作远程服务器的实现代码
2018/02/08 Python
Python中出现IndentationError:unindent does not match any outer indentation level错误的解决方法
2020/04/18 Python
Python实现 PS 图像调整中的亮度调整
2019/06/28 Python
利用django model save方法对未更改的字段依然进行了保存
2020/03/28 Python
pandas分批读取大数据集教程
2020/06/06 Python
Python通过递归函数输出嵌套列表元素
2020/10/15 Python
CSS3网格的三个新特性详解
2014/04/04 HTML / CSS
详解CSS3实现响应式手风琴效果
2020/06/10 HTML / CSS
墨尔本复古时尚品牌:Dangerfield
2018/12/12 全球购物
单位提档介绍信
2014/01/17 职场文书
40岁生日感言
2014/02/15 职场文书
家长对老师的感言
2014/03/11 职场文书
干部对照检查材料范文
2014/08/26 职场文书
新郎答谢词
2015/01/04 职场文书
工厂仓库管理员岗位职责
2015/04/09 职场文书
公司安全管理制度范本
2015/08/05 职场文书