軸 axis
二維數組
0爲橫向,1爲縱向
三維數組
注意:沒有用0表示的軸
廣播機制
從線性代數講,數組就是矩陣,矩陣之間能夠進行加減乘除操作,但是矩陣的加減操作需要矩陣形狀相同, 爲了實現不同矩陣的相加減,在numpy中引入了廣播機制
廣播機制
當數組形狀不同時,numpy通過擴展數組,從而實現不同數組之間相加減
如果兩個數組的後緣維度(trailing dimension,即從末尾開始算起的維度)的軸長度相符,或其中的一方的長度爲1,則認爲它們是廣播兼容的。廣播會在缺失和(或)長度爲1的維度上進行。
數組維度不同,後緣維度的軸長相符
import numpy as np
# 二維數組
arr1 = np.array(
[[1, 2, 3],
[4, 5, 6]]
)
arr2 = np.array(
[1,2,3]
)
print(arr1.shape)
print(arr2.shape)
arr1 是二維數組,形狀是(2,3),arr2是一維數組,形狀是(3,),維數不同,但是後緣維度軸長相同,可以進行運算。
具體運算過程
數組維度相同,其中有個軸爲1
arr1形狀爲(4,3),arr2形狀爲(4,1),都是二維數組,數組自動擴充,然後進行相加