在使用 numpy重点矩阵 和 array数组相乘的时候,经常会发生这个错误,
import numpy as np
d = np.array([[5,6,7,8]])
c = np.array([[1,2,3,4],[3,4,5,6],[4,5,6,7],[2,3,4,6]])
a = c.dot(d)
print(a)
错误:ValueError: shapes (4,4) and (1,4) not aligned: 4 (dim 1) != 1 (dim 0)
解决方法可以进行一定的转换:
import numpy as np
d = np.squeeze(np.array([[5,6,7,8]]))
c = np.squeeze(np.array([[1,2,3,4],[3,4,5,6],[4,5,6,7],[2,3,4,6]]))
a = c.dot(d)
print(a)
也可应用于:
import numpy as np
d = np.squeeze(np.array([5,6,7,8]))
c = np.squeeze(np.array([[1,2,3,4],[3,4,5,6],[4,5,6,7],[2,3,4,6]]))
a = c.dot(d)
print(a)
结果相同:
[ 70 122 148 104]