NumPy数组基本用法
Numpy
是Python
科学计算库,用于快速处理任意维度的数组。NumPy
提供一个N维数组类型ndarray,它描述了相同类型的“items”的集合。numpy.ndarray
支持向量化运算。NumPy
使用c语言写的,底部解除了GIL
,其对数组的操作速度不在受python
解释器限制。
numpy中的数组:
Numpy
中的数组的使用跟Python
中的列表非常类似。他们之间的区别如下:
- 一个列表中可以存储多种数据类型。比如
a = [1,'a']
是允许的,而数组只能存储同种数据类型。 - 数组可以是多维的,当多维数组中所有的数据都是数值类型的时候,相当于线性代数中的矩阵,是可以进行相互间的运算的。
创建数组(np.ndarray对象):
Numpy
经常和数组打交道,因此首先第一步是要学会创建数组。在Numpy
中的数组的数据类型叫做ndarray
。以下是两种创建的方式:
-
根据
Python
中的列表生成:import numpy as np a1 = np.array([1,2,3,4]) print(a1) print(type(a1))
-
使用
np.arange
生成,np.arange
的用法类似于Python
中的range
:import numpy as np a2 = np.arange(2,21,2) print(a2)
-
使用
np.random
生成随机数的数组:a1 = np.random.random(2,2) # 生成2行2列的随机数的数组 a2 = np.random.randint(0,10,size=(3,3)) # 元素是从0-10之间随机的3行3列的数组
-
使用函数生成特殊的数组:
import numpy as np a1 = np.zeros((2,2)) #生成一个所有元素都是0的2行2列的数组 a2 = np.ones((3,2)) #生成一个所有元素都是1的3行2列的数组 a3 = np