Table of contents
  1. numpy axis
  2. numpy.array_equal
  3. numpy.argmax(a, axis=None, out=None)
  4. numpy.random.normal(loc=0.0, scale=1.0, size=None)
  5. [numpy.ravel(a, order=’C’)]
  6. numpy.dot(a, b, out=None)
  7. numpy.matmul
  8. np.vstack OR np.hstack
  9. numpy.where
  10. np.argsort(a)
  11. numpy.cumsum(array)
  12. numpy.linspace

numpy axis

这篇文章 对numpy 的 axis解释的不错。直观的看下图:

numpy axis

numpy.array_equal

判断两个numpy array是否相同。只返回一个bool value, True or False。而不是一个bool matrix。

numpy.argmax(a, axis=None, out=None)

Returns the indices of the maximum values along an axis. 返回指定axis最大值的indices.如果是二维matrix,我们想求每一行中的最大值的indice,我们可以这样写indexs = np.argmax(circle_matrix,axis=1)

numpy.random.normal(loc=0.0, scale=1.0, size=None)

可以用于对weights的初始化。

Parameters:

  • loc : mean
  • scale : std
  • size : number of data

[numpy.ravel(a, order=’C’)]

Return a contiguous flattened array.

x = np.array([[1, 2, 3], [4, 5, 6]])
np.ravel(x)
# output : array([1, 2, 3, 4, 5, 6])

numpy.dot(a, b, out=None)

两个matrix进行相乘。

  1. 如果a,b 是一维的数组,则是进行点乘。
  2. 如果a,b 是多维数组,则推荐使用 matmul or a @ . here @ calls np.matmul . 这是因为在处理大的matrix时,后两者的处理速度要比numpy.dot 更快。参考stack overflow

numpy.matmul

多维数组进行相乘。不能是scaler value。

shape that matches the signature (n,k),(k,m)->(n,m).

np.vstack OR np.hstack

参考官方文档

X_combined_std = np.vstack((X_train_std,X_test_std))
y_combined = np.hstack((y_train,y_test))
  • np.vstack : 一行一行的叠加, vertically (row wise)
  • np.hstack : 一列一列的叠加, horizontally (column wise).

numpy.where

numpy.where(condition[, x, y])

如果condition 返回True,则返回x,otherwise,return y.

a = np.arange(10)
np.where(a < 5, a, 10*a)

np.argsort(a)

Returns the indices that would sort an array.对array a 进行从小到大排序。

a = np.array([0,2,1,4,3,5])

indices = np.argsort(a)[::-1] # 从大到小进行排序

numpy.cumsum(array)

Return the cumulative sum of the elements along a given axis.相当于前缀和

numpy.linspace

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)

把从start 和stop中间的距离进行分割成num份