Python学習:numpy点乗、要素別乗算、および転置の処理

13394 ワード

対応する要素にelement-wise productを乗算:np.Multiply()、または*
y1 = np.array([0, 0, 0, 1, 1, 1, 2, 2, 2])
y2 = np.array([0, 0, 0, 1, 1, 1, 2, 2, 2])

y1*y2
Out[8]: array([0, 0, 0, 1, 1, 1, 4, 4, 4])
np.multiply(y1,y2)
Out[9]: array([0, 0, 0, 1, 1, 1, 4, 4, 4])

np.dot()
x1 = np.array([[1, 2, 3], [4, 5, 6]])
x2 = np.array([[1, 2], [3, 4], [5, 6]])
# (2,3)*(3,2)=(2,2)
np.dot(x1,x2)
Out[12]: 
array([[22, 28],
       [49, 64]])

てんい
x1 = np.array([[1, 2, 3], [4, 5, 6]])
x1.T
Out[13]: 
array([[1, 4],
       [2, 5],
       [3, 6]])


注意1次元行配列の転置は成功せず[]を追加する必要があります
y1 = np.array([0, 0, 0, 1, 1, 1, 2, 2, 2])
y1.T
Out[14]: array([0, 0, 0, 1, 1, 1, 2, 2, 2])

y2 = np.array([[0, 0, 0, 1, 1, 1, 2, 2, 2]])
y2.T
Out[17]: 
array([[0],
       [0],
       [0],
       [1],
       [1],
       [1],
       [2],
       [2],
       [2]])