numpy.ndarray¶
- class
numpy.
ndarray
[source]¶ 数组对象表示固定大小项目的多维均匀数组。相关联的数据类型对象描述了数组中每个元素的格式(其字节顺序,它在内存中占用的字节数,是整数,浮点数还是其他值等)
数组应使用
array
,zeros
或empty
(请参阅下面的“另请参阅”部分)来构造。这里给出的参数指的是用于实例化数组的低级方法(ndarray(...))。有关更多信息,请参阅
numpy
模块并检查数组的方法和属性。参数: (用于__new__方法;请参见下面的注释)
shape:ints的元组
已创建数组的形状。
dtype:数据类型,可选
可以解释为numpy数据类型的任何对象。
buffer:对象暴露缓冲区接口,可选
用于用数据填充数组。
offset:int,可选
缓冲器中数组数据的偏移量。
strides:ints的tuple,可选
内存中的数据步长。
order:{'C','F'},可选
行主(C风格)或列主(Fortran风格)顺序。
笔记
有两种使用
__new__
创建数组的模式:不需要
__init__
方法,因为数组在__new__
方法后完全初始化。例子
这些示例说明了低级
ndarray
构造函数。请参阅上面的请参阅部分,以了解更容易构建ndarray的方法。第一种模式,缓冲为无:
>>> np.ndarray(shape=(2,2), dtype=float, order='F') array([[ -1.13698227e+002, 4.25087011e-303], [ 2.88528414e-306, 3.27025015e-309]]) #random
第二模式:
>>> 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])
属性
T
与self.transpose()相同,除非self是self.ndim返回 data
Python缓冲区对象指向数组的数据的开始。 dtype
数组元素的数据类型。 flags
有关数组的内存布局的信息。 flat
数组上的1-D迭代器。 imag
数组的虚部。 real
数组的实数部分(对应虚数的概念) size
数组中的元素数。 itemsize
一个数组元素的长度(以字节为单位)。 nbytes
数组的元素消耗的总字节数。 ndim
数组尺寸数。 shape
数组维数组。 strides
遍历数组时,在每个维度中步进的字节数组。 ctypes
一个对象,用于简化数组与ctypes模块的交互。 base
如果内存是来自某个其他对象的基本对象。 方法
all
([axis,out,keepdims])如果所有元素均为True,则返回True。 any
([axis,out,keepdims])如果a的任何元素求值为True,则返回True。 argmax
([axis,out])沿给定轴的最大值的返回指数。 argmin
([axis,out])沿着a的给定轴的最小值的返回指数。 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])返回指定的对角线。 dot
(b [,out])两个数组的点积。 dump
(file)将数组的pickle转储到指定的文件。 dumps
()以字符串形式返回数组的pickle。 fill
(value)使用标量值填充数组。 flatten
([order])将折叠的数组的副本返回到一个维度。 getfield
(dtype [,offset])将给定数组的字段返回为特定类型。 item
(\ * args)将数组的元素复制到标准Python标量并返回。 itemset
(\ * args)将标量插入到数组中(如果可能,将标量转换为数组的dtype) max
([axis,out])沿给定轴返回最大值。 mean
([axis,dtype,out,keepdims])返回沿给定轴的数组元素的平均值。 min
([axis,out,keepdims])沿给定轴返回最小值。 newbyteorder
([new_order])返回具有以不同字节顺序查看的相同数据的数组。 nonzero
()返回非零元素的索引。 partition
(kth [,axis,kind,order])重新排列数组中的元素,使得第k个位置的元素的值在排序数组中的位置。 prod
([axis,dtype,out,keepdims])返回给定轴上的数组元素的乘积 ptp
([axis,out])沿给定轴的峰到峰(最大 - 最小)值。 put
(indices,values [,mode])对于所有n,设置 a.flat [n] = 在指数。
ravel
([order])返回展平的数组。 repeat
(重复[,轴])重复数组的元素。 reshape
(shape [,order])返回包含具有新形状的相同数据的数组。 resize
(new_shape [,refcheck])就地更改数组的形状和大小。 round
([小数,输出])返回a,每个元素四舍五入为给定的小数位数。 searchsorted
(v [,side,sorter])查找索引,其中v的元素应插入到a以维持顺序。 setfield
将值放入由数据类型定义的字段中的指定位置。 setflags
([write,align,uic])分别设置数组标志WRITEABLE,ALIGNED和UPDATEIFCOPY。 sort
([axis,kind,order])就地对数组进行排序。 squeeze
([axis])从a形状删除单维条目。 std
([axis,dtype,out,ddof,keepdims])返回给定轴上的数组元素的标准偏差。 sum
([axis,dtype,out,keepdims])返回给定轴上的数组元素的总和。 swapaxes
(axis1,axis2)返回数组的视图,其中axis1和axis2互换。 take
(indices [,axis,out,mode])返回由给定索引处的a元素组成的数组。 tobytes
([order])在数组中构造包含原始数据字节的Python字节。 tofile
(fid [,sep,format])将数组作为文本或二进制(默认)写入文件。 tolist
()将数组返回为(可能是嵌套的)列表。 tostring
([order])在数组中构造包含原始数据字节的Python字节。 trace
([offset,axis1,axis2,dtype,out])沿数组的对角线返回总和。 transpose
(\ * axes)返回具有轴转置的数组的视图。 var
([axis,dtype,out,ddof,keepdims])沿给定轴返回数组元素的方差。 view
([dtype,type])数组的新视图与相同的数据。