使用pip安装Numpy:
pip install numpy
导入NumPy包并起别名np:
import NumPy as np
数组
把 List 转换成数组:
np.array(List) # 传入一个List
生成一维数组并初始化:
np.full(10, 0, dtype=int) # 10个元素,初始值为0,数据类型int,默认float
生成二维数组并初始化:
np.full((4, 4), 0, dtype=int) # 4*4的二维数组
对照数组a的结构生成一个新的数组并初始化:
np.full_like(a, 0) # 初始值为0
生成随机数组:
np.random.random(n) # 生成n个[0, 1)一维随机数组
np.random.random((m, n)) # 生成m*n个[0, 1)二维随机数组
范围取值生成数组:
np.arange(0, 10, 2) # 与range()相似,0-10每两个取一个值
np.linspace(0, 5, 10) # 0-5里面等间隔取10个数
生成单位矩阵:
np.eye(5) # 5*5的单位矩阵
访问数组元素:
a[0][0] # 访问数组a的元素
a[0, 0] # 两种访问数组方式等价
数组切片:
a[:2, :2] # 取数组a前两行,前两列
数组属性:
a.ndim # 数组a的维度
a.shape # 形状,每个维度的大小
a.size # 总的元素个数
a.dtype # 元素的数据类型
数组运算:
a+10 # 对数组a里的每一个元素+10,四则运算,一维或多维
np.add(a, 10) # 等价于a+10,返回一个新的数组
np.sin(a) # 对数组a里的每一个元素进行正弦运算,返回一个新的数组
数组统计运算:
np.sum(a, axis=0) # 对数组a求和,axis=0对每一列求和,axis=1对每一行求和,不写axis时默认对所有能元素求和
np.max(a) # 求数组a中的最大值,也可用axis指定每一行或每一列
数组比较:
a>3 # 对数组a里的每一个元素进行比较,返回ture/false
数组排序:
np.sort(a) # 对数组a的每一行里的元素进行排序
a.sort() # 对数组a的行根据每一行的第一个元素排序,传入axis=0同时对每一列上的元素排序
数组拼接:
np.concatenate([a, b], axis=0) # axis=0按照行拼接,axis=1按照列拼接