- Python大数据分析算法与实例
- 邓立国
- 617字
- 2022-07-27 19:35:03
3.3 ndarray对象
NumPy中定义的最重要的对象是称为ndarray的N维数组类型。它描述相同类型的元素集合,可以使用基于零的索引访问集合中的项目。
ndarray中的每个元素在内存中使用相同大小的块。ndarray中的每个元素是数据类型对象的对象(称为dtype)。
从ndarray对象提取的任何元素(通过切片)由一个数组标量类型的Python对象表示。图3.1显示了ndarray数据类型对象(dtype)和数组标量类型之间的关系。
图3.1 ndarray数据类型对象(dtype)和数组标量类型之间的关系
ndarray类的实例可以通过不同的数组创建例程来构造。基本的ndarray是使用NumPy中的数组函数创建的,如下所示:
numpy.array
它从任何暴露数组接口的对象或从返回数组的任何方法创建一个ndarray。
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
上面的构造器接收以下参数:
- object:任何暴露数组接口方法的对象都会返回一个数组或任何(嵌套)序列。
- dtype:数组所需的数据类型,可选。
- copy:可选,默认为true,对象是否被复制。
- order:C(按行)、F(按列)或A(任意,默认)。
- subok:默认情况下,返回的数组强制为基类数组。如果为true,就返回子类。
- ndmin:指定返回数组的最小维数。
【例3.1】
import numpy as np a = np.array([1,2,3]) print a
输出如下:
[1, 2, 3]
【例3.2】
# 多于一个维度 import numpy as np a = np.array([[1, 2], [3, 4]]) print a
输出如下:
[[1, 2] [3, 4]]
【例3.3】
# 最小维度 import numpy as np a = np.array([1, 2, 3,4,5], ndmin = 2) print a
输出如下:
[[1, 2, 3, 4, 5]]
【例3.4】
# dtype 参数 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风格)的方式保存元素。