NumPy - Ndarray 对象

NumPy 中定义的最重要的对象是一个名为 ndarray 的 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

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

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 样式)保存元素。