[英]Numpy: multiplying matrix elements with array of matrices
我需要將a的元素乘以2x2矩陣x與矩陣y相乘,矩陣y的元素是2x2矩陣。 當我使用傳統的numpy乘法時,它采用整個矩陣x,並將其與y中的每個矩陣相乘。 我一直在搜索numpy doc。 對於會復制這個的東西:
>>> x = np.array([[1, 0], [0, 1]])
>>> x
array([[1, 0],
[0, 1]])
>>> y = np.ones((2, 2, 2, 2))
>>> y
array([[[[ 1., 1.],
[ 1., 1.]],
[[ 1., 1.],
[ 1., 1.]]],
[[[ 1., 1.],
[ 1., 1.]],
[[ 1., 1.],
[ 1., 1.]]]])
>>> multiply(x,y)
[[[[1, 1],
[1, 1]],
[[0, 0],
[0, 0]]],
[[[0, 0],
[0, 0]],
[[1, 1],
[1, 1]]]]
編輯:從@Dalek和@DSM的評論看來,實際上你想要的是:
np.einsum('ij, ijkl-> ijkl', x, y)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.