首页 numpy正文

NumPy 数组属性详解

启明SEO numpy 2022-11-09 22:28:19 840 0 数组属性

NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推。


在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(dimensions)。比如说,二维数组相当于是两个一维数组,其中第一个一维数组中每个元素又是一个一维数组。所以一维数组就是 NumPy 中的轴(axis),第一个轴相当于是底层数组,第二个轴是底层数组里的数组。而轴的数量——秩,就是数组的维数。


很多时候可以声明 axis。axis=0,表示沿着第 0 轴进行操作,即对每一列进行操作;axis=1,表示沿着第1轴进行操作,即对每一行进行操作。


NumPy 的数组中比较重要 ndarray 对象属性有:


ndarray.ndim:秩,即轴的数量或维度的数量

ndarray.shape:数组的维度,对于矩阵,n 行 m 列

ndarray.size:数组元素的总个数,相当于 .shape 中 n*m 的值

ndarray.dtype:ndarray 对象的元素类型

ndarray.itemsize:ndarray 对象中每个元素的大小,以字节为单位

ndarray.flags:ndarray 对象的内存信息

ndarray.real:ndarray元素的实部

ndarray.imag:ndarray 元素的虚部

ndarray.data:包含实际数组元素的缓冲区,由于一般通过数组的索引获取元素,所以通常不需要使用这个属性。


ndarray.ndim

ndarray.ndim 用于返回数组的维数,等于秩。

实例如下图:

ndarray.ndim

ndarray.shape

ndarray.shape 表示数组的维度,返回一个元组,这个元组的长度就是维度的数目,即 ndim 属性(秩)。比如,一个二维数组,其维度表示"行数"和"列数"。


ndarray.shape 也可以用于调整数组大小。NumPy 也提供了 reshape 函数来调整数组大小。实例如下图:

ndarray.shape 与reshape

ndarray.itemsize

ndarray.itemsize 以字节的形式返回数组中每一个元素的大小。


例如,一个元素类型为 float64 的数组 itemsize 属性值为 8(float64 占用 64 个 bits,每个字节长度为 8,所以 64/8,占用 8 个字节),又如,一个元素类型为 complex32 的数组 item 属性为 4(32/8)。

ndarray.itemsize

ndarray.flags

ndarray.flags 返回 ndarray 对象的内存信息,包含以下属性:


  • C_CONTIGUOUS (C) :数据是在一个单一的C风格的连续段中

  • F_CONTIGUOUS (F):数据是在一个单一的Fortran风格的连续段中

  • OWNDATA (O):数组拥有它所使用的内存或从另一个对象中借用它

  • WRITEABLE (W):数据区域可以被写入,将该值设置为 False,则数据为只读

  • ALIGNED (A):数据和所有元素都适当地对齐到硬件上

  • UPDATEIFCOPY (U):这个数组是其它数组的一个副本,当这个数组被释放时,原数组的内容将被更新

ndarray.flags

评论

启明SEO微信

有什么问题欢迎添加微信咨询

好文推荐

实时访客入口页面出现bd_vid=标识是什么原因

实时访客入口页面出现bd_vid=标识是什么原因

最近查看百度实时访客,总是会看到入口页面会多......

有了微信视频号,但是没有发布权限,怎么开通

有了微信视频号,但是没有发布权限,怎么开通

视频号是微信在2020年1月19号开始内测的......

如何用python抓取爱企查企业信息

如何用python抓取爱企查企业信息

前段时间,经理让我去找一些企业的信息,我平常......

服务器配置低,宝塔面板安装IIS总是安装不上怎么办

服务器配置低,宝塔面板安装IIS总是安装不上怎么办

对于一般企业网站或者博客来说,对服务器的配置......

如何修改浏览器指纹,Canvas指纹、Webgl指纹、Audio指纹修改方法?

如何修改浏览器指纹,Canvas指纹、Webgl指纹、Audio指纹修改方法?

修改浏览指纹的方法其实也是很简单,主要使用到......

win10下安装MYSQL后,提示Can't connect to MySQL server on localhost (10061)相关问题解决方法

win10下安装MYSQL后,提示Can't connect to MySQL server on localhost (10061)相关问题解决方法

我遇到的问题是电脑原先安装过mysql,卸......