使用Numpy广播将不同形状的矩阵或数组加减乘除
首先先强调一点很容易混淆的点:
- 一个shape为(4,)的np.array其实是一行!!一行4列!!而不是4行每行1个元素!!
- 上面说的这个👆array假设叫x,那么想把x加到一个shape为(9,4)的matrix上是可以直接加的,如果想要把x加到一个shape为(4,9)的matrix上要先转置!而且不能直接转置,因为一个array的转置的形状是不会变的。。正确做法是:先把x变成一个数组,之后再对这个数组转置,这时候x的形状就已经变成了(4,1),成了真正的4行每行1列,也就可以把它加到shape为(4,9)的matrix上去喽~
在我们所以Numpy的过程中,常常会有大量的矩阵数组需要运算,但是不同类型的Numpy怎样进行加减乘除呢?这就要用到我们Numpy的广播。