介绍
numpy是一个功能强大的python库。机器学习中,需要对矩阵进行各种数值计算,numpy对其提供非常好的库,用于简单和快速计算。
常用函数库
-
数组属性
ndarray.ndim:秩,即轴的数量或维度的数量
ndarray.shape:数组的维度,对于矩阵,n 行 m 列
ndarray.size :数组元素的总个数,相当于 .shape 中 n*m 的值
ndarray.dtype:ndarray 对象的元素类型 -
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
功能:创建一个 ndarray(numpy数组)
object:数组或嵌套的数列
dtype:数组元素的数据类型,可选
ndmin:指定生成数组的最小维度 -
numpy.zeros(shape, dtype = float, order = 'C')
功能:创建制定大小以0填充的numpy数组
axis=0,表示沿着第 0 轴进行操作,即对每一列进行操作;axis=1,表示沿着第1轴进行操作,即对每一行进行操作。
-
numpy.arange(start, stop, step, dtype)
功能:根据 start 与 stop 指定的范围以及 step 设定的步长,生成一个 ndarray。
左闭右开(遵循python特性) -
numpy运算函数
numpy.sqrt/num/mean/power等等。
-
numpy.mat(data, dtype=None)
功能:将data转换为矩阵。numpy矩阵和numpy数组仅在一维是不一样,高维基本一样。一维矩阵[[1,2]]其shape为[1,2],对应一维数组为[1,2]其shape为[2],即一维
-
np.random
功能:随机数
np.random.rand(x, y) 返回0~1随机值,数组大小为xy
np.random.uniform(x, y) 返回区间[x, y) 随机值,注意与上一个区别!
np.random.randn(x, y) 返回xy大小数组,每个随机数遵循标准正态分布
np.random.randint(low, high, size) 返回[low, high)区间随机整数 -
np.tile
功能:将数组按指定维度方向复制
np.tile(data, 2) 将数组data沿一维复制为原来的2倍
np.tile(data, (2,1)) 将数组data沿一维复制为原来的1倍,沿2维复制为原来的2倍 -
np.argsort
功能:将数组按指定维度方向排序,返回的是数组值从小到大的索引值
numpy.argsort(a, axis=-1, kind='quicksort', order=None)