Python数据分析从入门到精通(第2版)
上QQ阅读APP看书,第一时间看更新

3.1.4 ndarray()数组对象

ndarray()数组对象是NumPy模块的基础对象,用于存放同类型元素的多维数组。ndarray中的每个元素在内存中都占有相同的存储空间,数据类型由dtype对象指定,每个ndarray只有一种dtype类型。

数组有一个比较重要的属性是shape,数组的维数与元素的数量就是通过shape来确定的。数组的形状(shape)是由N个正整数组成的元组来指定的,元组的每个元素对应每一维的大小。数组在创建时被指定大小后将不会再发生改变,而Python中的列表大小是可以改变的,这也是数组与列表区别较大的地方。

创建一个ndarray只需调用NumPy中的array()函数即可,语法格式如下:

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

array()函数的参数说明如表3.2所示。

表3.2 array()函数的参数说明

使用array()函数创建一个ndarray时,需要用Python列表作为参数,而列表中的元素即ndarray的元素。代码如下:

     1  import numpy as np
     2  a = np.array([1,2,3,4,5])        # 定义ndarray
     3  print('数组内容为:',a)          # 打印数组内容
     4  print('数组类型为:',a.dtype)    # 打印数组类型
     5  print('数组的形状为:',a.shape)  # 打印数组的形状
     6  print('数组的维数为:',a.ndim)   # 打印数组的维数
     7  print('数组的长度为:',a.size)   # 打印数组的长度

运行结果如下:

     数组内容为: [1 2 3 4 5]
     数组类型为: int32
     数组的形状为: (5,)
     数组的维数为: 1
     数组的长度为: 5

NumPy的数组中除了以上实例所使用的属性,还有几个比较重要的属性,如表3.3所示。

表3.3 ndarray()数组对象的其他属性