调整数组的数组大小和维度
ndarray.shape
返回一个包含数组维度的元组,也可以用于调整数组大小和维度
In [1]: import numpy as np
In [2]: num = np.array([[1,2,3],[4,5,6]])
In [3]: num
Out[3]:
array([[1, 2, 3],
[4, 5, 6]])
In [4]: num.shape
Out[4]: (2, 3)
In [5]: num.shape = (3, 2)
In [6]: num.shape
Out[6]: (3, 2)
In [7]: num
Out[7]:
array([[1, 2],
[3, 4],
[5, 6]])
ndarray.reshape
函数也可以调整数组大小和维度
In [8]: num.reshape(3, 2)
Out[8]:
array([[1, 2],
[3, 4],
[5, 6]])
快速生成、调整多维度数组
ndarray.arange
快速生成等间隔数组
In [1]: import numpy as np
In [2]: num = np.arange(24)
In [3]: num
Out[3]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,17, 18, 19, 20, 21, 22, 23])
ndarray.ndim
返回当前数组的维度
In [4]: num.ndim
Out[4]: 1
In [5]: num.shape = (4, 6)
In [6]: num
Out[6]:
array([[ 0, 1, 2, 3, 4, 5],
[ 6, 7, 8, 9, 10, 11],
[12, 13, 14, 15, 16, 17],
[18, 19, 20, 21, 22, 23]])
In [7]: num.ndim
Out[7]: 2
数组其他属性
numpy.itemsize
返回数组中每个元素的字节单位长度
In [8]: num.itemsize
Out[8]: 8
ndarray
对象的属性
-
C_CONTIGUOUS © 数组位于单一的、C 风格的连续区段内
-
F_CONTIGUOUS (F) 数组位于单一的、Fortran 风格的连续区段内
-
OWNDATA (O) 数组的内存从其它对象处借用
-
WRITEABLE (W) 数据区域可写入。 将它设置为flase会锁定数据,使其只读
-
ALIGNED (A) 数据和任何元素会为硬件适当对齐
-
UPDATEIFCOPY (U) 这个数组是另一数组的副本。当这个数组释放时,源数组会由这个数组中的元素更新
numpy.flags
返回 ndarray
对象拥有属性的当前值
In [10]: num.flags
Out[10]:
C_CONTIGUOUS : True
F_CONTIGUOUS : False
OWNDATA : True
WRITEABLE : True
ALIGNED : True
WRITEBACKIFCOPY : False
UPDATEIFCOPY : False