Умножение 2 списков массива с совпадающими индексами - PullRequest
0 голосов
/ 06 августа 2020

Учитывая 2 списка массивов (или 2 трехмерных массива), есть ли более умный способ в numpy, помимо al oop, получить умножение первого массива первого списка на первый массив второго списка и так далее? У меня такое чувство, что я упускаю из виду очевидное. Это моя текущая реализация:

import numpy as np

r = []

for i in range(np.shape(rz)[2]):
    r.append(ry[..., i] @ rz[..., i])
r = np.array(r)

Ответы [ 2 ]

1 голос
/ 06 августа 2020

Предполагая, что последнее измерение такое же, numpy .einsum должно помочь:

import numpy as np

np.einsum('ijk,jmk-> imk', ry, rz)
0 голосов
/ 06 августа 2020
import numpy as np

A = np.array([[3, 6, 7], [5, -3, 0]])

B = np.array([[1, 1], [2, 1], [3, -3]])

C = A.dot(B)

print(C)

Вывод:

[[36 -12] [-1 2]]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...