NumPy Ndarray 对象


NumPy 中定义的最重要的对象是一个 N 维数组类型,称为ndarray,它描述了相同类型的项目的集合,可以使用从零开始的索引访问集合中的项目。

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

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

Ndarray

ndarray 类的实例可以通过本教程后面描述的不同数组创建例程来构造,基本的 ndarray 是使用 NumPy 中的数组函数创建的,如下所示:

numpy.array

它从任何公开数组接口的对象或任何返回数组的方法创建一个 ndarray。

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

上述构造函数采用以下参数:

序号.参数及说明
1

object

任何公开数组接口方法的对象都会返回一个数组或任何(嵌套)序列。

2

dtype

所需的数组数据类型,可选

3

copy

可选的。默认情况下(true),对象被复制

4

order

C(行专业)或 F(列专业)或 A(任何)(默认)

5

subok

默认情况下,返回的数组强制为基类数组。如果为真,子类通过

6

ndmin

指定结果数组的最小维度

请看以下示例以更好地理解。

示例 1


import numpy as np 
a = np.array([1,2,3]) 
print a

输出如下:

[1, 2, 3]

示例 2


# more than one dimensions 
import numpy as np 
a = np.array([[1, 2], [3, 4]]) 
print a

输出如下:

[[1, 2] 
 [3, 4]]

示例 3


# minimum dimensions 
import numpy as np 
a = np.array([1, 2, 3,4,5], ndmin = 2) 
print a

输出如下:

[[1, 2, 3, 4, 5]]

示例 4


# dtype parameter 
import numpy as np 
a = np.array([1, 2, 3], dtype = complex) 
print a

输出如下:

[ 1.+0.j,  2.+0.j,  3.+0.j]

ndarray对象由计算机内存的连续一维段组成,结合索引方案将每个项目映射到内存块中的一个位置。内存块以行优先顺序(C 样式)或列优先顺序(FORTRAN 或 MatLab 样式)保存元素。