在《Python Numpy基础:多维数组ndarray对象》我们对 ndarray 数组对象有了基本的认识,ndarray 数组由数据本身以及描述性元数据构成,且分开存放,从而减少对数据本身的访问频率,进而优化了效率,ndarray 数组,也可以称为 Numpy 数组,该数组所有的数据类型必相同,即具有同质性;且数组的下标也是从 0 开始的。
在上一节中大多数情况下是生成的是随机数组但是这与我们的主观能动性不符,那么如何创建一个 Numpy 数组呢,在本节我们将介绍几种创建数组的方法。
1. Numpy 数组的创建方法
1)np.array()
这是最基本的数组构建方法, 它的完整方法如下所示:
numpy.array(object, dtype=None, copy=True, order='K', subok=False, ndmin=0)
对于上面的参数,我们简单做一下解释,因为某些参数几乎用不到,所以我们只需记住常用的重要参数即可:
object,表示数组,即要生成 ndarray 数组的对象;
dtype,表示数据类型,根据给出的object自动确定;
copy,布尔值,为 True 表示复制对象;
order,指定内存布局,有 K、A、C、F 可选,默认即可;
subok,布尔值,创建的数组是否作为基类数组;
ndmin,指定数组具有的最小维数。
示例如下所示:
In [1]: import numpy as np
In [2]: data=np.array([[1,2],[3,4]])
In [3]: data
Out[3]:
array([[1, 2],
[3, 4]])
In [4]: data=np.array([1,2,3,4],dtype=complex)#复数类型
In [5]: data
Out[5]: array([1.+0.j, 2.+0.j, 3.+0.j, 4.+0.j])
In [6]: data=np.array([1,2,3,4],ndmin=2)#二维数组
In [7]: data
Out[7]: array([[1, 2, 3, 4]])
2) np.arange(start,stop,step,dtype=None)
这个创建数组的方式也很容易理解,因为它和 Python 的内置函数的 range 函数是一样的,在以后我们会经常使用的到这个方法:
In [8]: data=np.arange