numpy.ndarray#

class numpy.ndarray(shape, dtype=float, buffer=None, offset=0, strides=None, order=None)[源代码]#

数组对象表示固定大小项的多维同质数组.相关的数据类型对象描述了数组中每个元素的格式(其字节顺序,它在内存中占用的字节数,它是否是整数,浮点数或其他类型等)

应使用 array , zerosempty 构造数组(请参阅下面的"另请参阅"部分). 这里给出的参数指的是用于实例化数组的底层方法 ( ndarray(…) ).

有关更多信息,请参阅 numpy 模块并检查数组的方法和属性.

参数:
(用于 __new__ 方法;请参阅下面的注释)
shape整数元组

创建的数组的形状.

dtypedata-type,可选

可以解释为 numpy 数据类型的任何对象.

buffer公开缓冲区接口的对象,可选

用于填充数组的数据.

offsetint, optional

缓冲区中数组数据的偏移量.

strides整数元组,可选

内存中数据的步幅.

order{‘C’, ‘F’},可选

行优先(C 样式)或列优先(Fortran 样式)顺序.

参见

array

构造一个数组.

zeros

创建一个数组,每个元素都为零.

empty

创建一个数组,但保持其已分配的内存不变(即,它包含"垃圾").

dtype

创建一种数据类型.

numpy.typing.NDArray

ndarray 别名:关于其 dtype.typegeneric .

注释

有两种使用 __new__ 创建数组的模式:

  1. 如果 buffer 为 None,则仅使用 shape , dtypeorder .

  2. 如果 buffer 是一个公开缓冲区接口的对象,则解释所有关键字.

由于数组在 __new__ 方法之后已完全初始化,因此不需要 __init__ 方法.

示例

这些示例说明了底层的 ndarray 构造函数. 有关构造 ndarray 的更简单方法,请参阅上面的"另请参阅"部分.

第一种模式, buffer 为 None:

>>> import numpy as np
>>> np.ndarray(shape=(2,2), dtype=float, order='F')
array([[0.0e+000, 0.0e+000], # random
       [     nan, 2.5e-323]])

第二种模式:

>>> np.ndarray((2,), buffer=np.array([1,2,3]),
...            offset=np.int_().itemsize,
...            dtype=int) # offset = 1*itemsize, i.e. skip first element
array([2, 3])
属性:
Tndarray

转置数组的视图.

databuffer

指向数组数据起点的 Python 缓冲区对象.

dtypedtype object

数组元素的数据类型.

flagsdict

关于数组内存布局的信息.

flatnumpy.flatiter 对象

一个在数组上进行 1-D 迭代的迭代器.

imagndarray

数组的虚部.

realndarray

数组的实部.

sizeint

数组中元素的数量.

itemsizeint

一个数组元素以字节为单位的长度.

nbytesint

数组元素占用的总字节数.

ndimint

数组维度的数量.

shape整数元组

数组维度的元组.

strides整数元组

遍历数组时,在每个维度中步进的字节数的元组.

ctypesctypes 对象

一个简化数组与 ctypes 模块交互的对象.

basendarray

如果内存来自其他对象,则为基对象.

方法

all ([axis, out, keepdims, where])

如果所有元素的计算结果都为 True,则返回 True.

any ([axis, out, keepdims, where])

如果 a 的任何元素的计算结果为 True,则返回 True.

argmax ([axis, out, keepdims])

返回沿给定轴的最大值的索引.

argmin ([axis, out, keepdims])

返回沿给定轴的最小值的索引.

argpartition (kth[, axis, kind, order])

返回将对该数组进行分区的索引.

argsort ([axis, kind, order])

返回将对该数组进行排序的索引.

astype (dtype[, order, casting, subok, copy])

数组的副本,转换为指定的类型.

byteswap ([inplace])

交换数组元素的字节

choose (choices[, out, mode])

使用索引数组从一组选择构造一个新数组.

clip ([min, max, out])

返回一个数组,其值限制在 [min, max] 范围内.

compress (condition[, axis, out])

返回沿给定轴的此数组的选定切片.

conj ()

对所有元素进行复共轭.

conjugate ()

返回复共轭,按元素计算.

copy ([order])

返回数组的副本.

cumprod ([axis, dtype, out])

返回沿给定轴的元素的累积乘积.

cumsum ([axis, dtype, out])

返回沿给定轴的元素的累积和.

diagonal ([offset, axis1, axis2])

返回指定的对角线.

dump (file)

将数组的 pickle 转储到指定的文件.

dumps ()

将数组的 pickle 作为字符串返回.

fill (value)

用标量值填充数组.

flatten ([order])

返回一个折叠成一维的数组的副本.

getfield (dtype[, offset])

将给定数组的字段作为某种类型返回.

item (args)

将数组的元素复制到标准 Python 标量并返回.

max ([axis, out, keepdims, initial, where])

返回沿给定轴的最大值.

mean ([axis, dtype, out, keepdims, where])

返回沿给定轴的数组元素的平均值.

min ([axis, out, keepdims, initial, where])

返回沿给定轴的最小值.

nonzero ()

返回非零元素的索引.

partition (kth[, axis, kind, order])

以某种方式部分地对数组中的元素进行排序,使得第 k 个位置的元素的值位于已排序数组中的位置.

prod ([axis, dtype, out, keepdims, initial, ...])

返回给定轴上数组元素的乘积.

put (indices, values[, mode])

对于 indices 中的所有 n ,设置 a.flat[n] = values[n] .

ravel ([order])

返回一个扁平化数组.

repeat (repeats[, axis])

重复数组的元素.

reshape (shape, /, \[, order, copy])

返回一个包含相同数据但具有新形状的数组.

resize (new_shape[, refcheck])

就地更改数组的形状和大小.

round ([decimals, out])

返回 a ,其中每个元素都四舍五入到给定的小数位数.

searchsorted (v[, side, sorter])

找到应将 v 的元素插入 a 中的索引以保持顺序.

setfield (val, dtype[, offset])

将一个值放入由数据类型定义的字段中的指定位置.

setflags ([write, align, uic])

分别设置数组标志 WRITEABLE,ALIGNED,WRITEBACKIFCOPY.

sort ([axis, kind, order])

就地对数组进行排序.

squeeze ([axis])

a 中移除长度为 1 的轴.

std ([axis, dtype, out, ddof, keepdims, where])

返回给定轴上数组元素的标准差.

sum ([axis, dtype, out, keepdims, initial, where])

返回给定轴上数组元素的总和.

swapaxes (axis1, axis2)

返回一个 axis1axis2 互换的数组视图.

take (indices[, axis, out, mode])

返回一个由给定索引处的 a 的元素组成的数组.

tobytes ([order])

构造包含数组中原始数据字节的 Python 字节.

tofile (fid[, sep, format])

将数组作为文本或二进制(默认)写入文件.

tolist ()

将数组作为 a.ndim 级的 Python 标量嵌套列表返回.

trace ([offset, axis1, axis2, dtype, out])

返回数组沿对角线的和.

transpose (axes)

返回一个轴已转置的数组视图.

var ([axis, dtype, out, ddof, keepdims, where])

返回给定轴上数组元素的方差.

view ([dtype][, type])

具有相同数据的数组的新视图.

dot

to_device