In [1]:
import numpy as np
In [2]:
# 创建3个矩阵
a = np.arange(15).reshape(3,5)
b = np.arange(15,30).reshape(3,5)
c = np.array([9,8,7,6])
In [3]:
a
Out[3]:
array([[ 0, 1, 2, 3, 4], [ 5, 6, 7, 8, 9], [10, 11, 12, 13, 14]])
In [4]:
b
Out[4]:
array([[15, 16, 17, 18, 19], [20, 21, 22, 23, 24], [25, 26, 27, 28, 29]])
In [5]:
c
Out[5]:
array([9, 8, 7, 6])
In [6]:
# 加
a + b
Out[6]:
array([[15, 17, 19, 21, 23], [25, 27, 29, 31, 33], [35, 37, 39, 41, 43]])
In [7]:
# 减
a - b
Out[7]:
array([[-15, -15, -15, -15, -15], [-15, -15, -15, -15, -15], [-15, -15, -15, -15, -15]])
In [8]:
# 数乘
2 * a
Out[8]:
array([[ 0, 2, 4, 6, 8], [10, 12, 14, 16, 18], [20, 22, 24, 26, 28]])
In [11]:
# 矩阵乘法
np.dot(a,b)
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) Cell In[11], line 2 1 # 矩阵乘法 ----> 2 np.dot(a,b) ValueError: shapes (3,5) and (3,5) not aligned: 5 (dim 1) != 3 (dim 0)
In [12]:
# 转置
a = a.T
a
Out[12]:
array([[ 0, 5, 10], [ 1, 6, 11], [ 2, 7, 12], [ 3, 8, 13], [ 4, 9, 14]])
In [13]:
np.dot(a,b)
Out[13]:
array([[350, 365, 380, 395, 410], [410, 428, 446, 464, 482], [470, 491, 512, 533, 554], [530, 554, 578, 602, 626], [590, 617, 644, 671, 698]])
In [ ]: