numpy是数学科学最基本的python库,底层是c语言实现,运行效率堪比C/Matlab,主要是做矩阵运算
np对象[0][2] # 等价于 np对象[0, 2]
a = np.full((2, 2), 1.2, dtype = float) a + 10 # 等价于 np.add(a, 10)
# ><==:返回bool类型的数组,此数组内每个值反映原数组内每个值是否符合条件 # 返回bool值,判断数组内全部值是否都符合条件 np.all(数组对象 操作符 条件) # 返回bool值,判断数组内是否有一个值符合条件 np.any(数组对象 操作符 条件)
不改变原数组
np.sort(数组对象)
np.sort(a, axis=0)
改变原数组排序(python内置函数
数组对象.sort() # 列排序
数组对象.sort(axis = 0)
注意
求和
np.sum(数组对象)
sum(数组对象[n])
等于
sum(数组对象[n, :])
sum(数组对象[:,n])
求最大值
np.max(c)
只有冒号代表忽略行/列
np对象[n:, n:]
np对象[n, :]
np对象[:, n]
np对象[2:][1:]
a = np.array([[0, 2, 4],[1, 3, 5]]) # 按行拼接(axis默认0 np.concatenate([a, a, a]) array([[0, 2, 4], [1, 3, 5], [0, 2, 4], [1, 3, 5], [0, 2, 4], [1, 3, 5]]) # 按列拼接 np.concatenate([a, a, a], axis = 1) array([[0, 2, 4, 0, 2, 4, 0, 2, 4], [1, 3, 5, 1, 3, 5, 1, 3, 5]])
# 保存 np.save(文件名, 数组) # 加载 np.load(文件名.npy, 数组) # 序列化多个array np.savez(文件名, 名字1 = 数组1, 名字2 = 数组2) # 加载具有多个array的文件 np.load(文件名.npz) 根据名字访问对应数组 np.load(文件名.npz)[名字]