数据分析之numpy的操作

Python日志

共 2670字,需浏览 6分钟

 · 2021-03-18

关注我们
Python日志


下午好啊

土豆本期说一下数据分析的另一个库

numpy

大家准备好认真阅读哦




01

Numpy(Numerical Python)是一个开源的Python科学计算库,用于快速处理任意维度的数组。


Numpy支持常见的数组和矩阵操作。对于同样的数值计算任务,使用Numpy比直接使用Python要简洁的多


Numpy使用ndarray对象来处理多维数组,该对象是一个快速而灵活的大数据容器。


Numpy专门针对ndarray的操作和运算进行了设计,所以数组的存储效率和输入输出性能远优于Python中的嵌套列表,数组越大,Numpy的优势就越明显。


02

NumPy 操作

使用NumPy,开发人员可以执行以下操作:

数组的算数和逻辑运算。

傅立叶变换和用于图形操作的例程。

与线性代数有关的操作。NumPy 拥有线性代数和随机数生成的内置函数。


03

NumPy – MatLab 的替代之一

NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用。这种组合广泛用于替代 MatLab,是一个流行的技术计算平台。但是,Python 作为 MatLab 的替代方案,现在被视为一种更加现代和完整的编程语言。

NumPy 是开源的,这是它的一个额外的优势。


04

NumPy - Ndarray 对象

NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。它描述相同类型的元素集合。可以使用基于零的索引访问集合中的项目。

ndarray中的每个元素在内存中使用相同大小的块。ndarray中的每个元素是数据类型对象的对象(称为 dtype)。

从ndarray对象提取的任何元素(通过切片)由一个数组标量类型的 Python 对象表示。下图显示了ndarray,数据类型对象(dtype)和数组标量类型之间的关系。



大小与排序

numpy在排序等方面常用的函数如下:


函数名

功能

函数名

功能

min

最小值

max

最大值

ptp

极差

argmin

最小值下标

minium

二元最小值

maxinum

二元最大值

sort

数组排序

argsort

数组排序下标

percentile

分位数

median

中位数


NumPy - 数据类型


NumPy 支持比 Python 更多种类的数值类型。下表显示了 NumPy 中定义的不同标量数据类型。


数据类型及描述
bool_ 存储为一个字节的布尔值(真或假)
int_ 默认整数,相当于 C 的long,通常为int32int64
intc 相当于 C 的int,通常为int32int64
intp 用于索引的整数,相当于 C 的size_t,通常为int32int64
int8 字节(-128 ~ 127)
int16 16 位整数(-32768 ~ 32767)
int32 32 位整数(-2147483648 ~ 2147483647)
int64 64 位整数(-9223372036854775808 ~ 9223372036854775807)
uint8 8 位无符号整数(0 ~ 255)
uint16 16 位无符号整数(0 ~ 65535)
uint32 32 位无符号整数(0 ~ 4294967295)
uint64 64 位无符号整数(0 ~ 18446744073709551615)
float_ float64的简写
float16 半精度浮点:符号位,5 位指数,10 位尾数
float32 单精度浮点:符号位,8 位指数,23 位尾数
float64 双精度浮点:符号位,11 位指数,52 位尾数
complex_ complex128的简写
complex64 复数,由两个 32 位浮点表示(实部和虚部)
complex128 复数,由两个 64 位浮点表示(实部和虚部)


NumPy 数字类型是dtype(数据类型)对象的实例,每个对象具有唯一的特征。这些类型可以是np.bool_np.float32等。


数据类型对象 (dtype)

数据类型对象描述了对应于数组的固定内存块的解释,取决于以下方面:

  • 数据类型(整数、浮点或者 Python 对象)

  • 数据大小

  • 字节序(小端或大端)

  • 在结构化类型的情况下,字段的名称,每个字段的数据类型,和每个字段占用的内存块部分。

  • 如果数据类型是子序列,它的形状和数据类型。

numpy.flags

ndarray对象拥有以下属性。这个函数返回了它们的当前值。


属性及描述
C_CONTIGUOUS (C) 数组位于单一的、C 风格的连续区段内
F_CONTIGUOUS (F) 数组位于单一的、Fortran 风格的连续区段内
OWNDATA (O) 数组的内存从其它对象处借用
WRITEABLE (W) 数据区域可写入。将它设置为flase会锁定数据,使其只读
ALIGNED (A) 数据和任何元素会为硬件适当对齐
UPDATEIFCOPY (U) 这个数组是另一数组的副本。当这个数组释放时,源数组会由这个数组中的元素更新


NumPy - 数组创建例程


新的ndarray对象可以通过任何下列数组创建例程或使用低级ndarray构造函数构造。

numpy.empty

它创建指定形状和dtype的未初始化数组。它使用以下构造函数:

numpy.empty(shape, dtype = float, order = 'C')


构造器接受下列参数:


参数及描述
Shape 空数组的形状,整数或整数元组
Dtype 所需的输出数组类型,可选
Order 'C'为按行的 C 风格数组,'F'为按列的 Fortran 风格数组


本期内容就先到这里啦

觉得不错的话别忘了给土豆一个三连哦

我们下期再见哦


需要学习资料的可以添加土豆的微信领取哦




Python日志
关注我们
一个认真搞知识的公众号

内容源自网络

浏览 30
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报