登录
首页大数据时代关于numpy概念的简单理解
关于numpy概念的简单理解
2020-07-06
收藏

numpy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。

numpy把所有的元素都组织到一个数据结构中,同一个缓存中。所以这些元素在内存中是相邻的。他们都有相同的类型,numpy就能对这些数字进行非常快速的计算。因为不用做类型检查,它不需要申请获取这些元素拥有所有对象。

numpy - Ndarray 对象

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

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

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

Ndarray

数据类型对象dtype

数据类型对象dtype描述了对应于数组固定内存块的解释,包括以下几个方面:

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

数据大小。

字节序(小端或大端)。

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

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

字节顺序取决于数据类型的前缀<或>。 <意味着编码是小端(最小有效字节存储在最小地址中),>意味着编码是大端(最大有效字节存储在最小地址中)。

numpy.dtype(object, align, copy)

相关参数说明如下:

object:被转换为数据类型的对象。

align:如果为true,则向字段添加间隔,使其类似C的结构体。

copy:生成dtype对象的新副本,如果为false,结果是内建数据类型对象的引用。

数据分析咨询请扫描二维码

客服在线
立即咨询