Python-numpy中有一種很高效的方法:廣播。 下面介紹一下廣播。
實例:對於這個矩陣,如果想求每列元素的和,怎么才能不用for循環?
(1,4)指的是一行四列的矩陣;axis決定了是橫向(行)求和還是豎向(列)求和。為0時豎向,1時橫向;在矩陣前*100,是讓矩陣里面的數為百分數;reshape作用是調整矩陣形狀,如reshape(1,4)就是把矩陣調整為1行4列的。
A是3*4的,(cal..)是1*4的,A/(cal..)就是3*4矩陣/1*4矩陣,那這是怎么運算的呢?
計算方法如上圖,其實很簡單,如:(m,n)與(1,n)進行運算,就是把(1,n)復制m次,變成(m,n)后再進行運算。其它的類似。
print(a.T) 輸出矩陣a的轉置。 print(a.shape) 輸出矩陣a的“形狀”
左邊這兩種是較好的建立列向量或行向量a的方式,而不是
所以為了避免bug的出現,要使用n*1的列/行向量,而不是含有n個數字的數組。
是X123與a1[1]的權值,以此類推