Поэлементное умножение с помощью numpy.multiply

Допустим, у меня есть массив N 1 1 a и массив N M M b в виде массивов NumPy. Я хочу сделать поэлементное умножение:

c[i,:,:] = a[i]*b[i,:,:]

без повторения i. Функция np.multiply(a,b) вроде бы справляется со своей задачей. Однако я не совсем понимаю внутреннюю работу этой функции, когда a и b не имеют одинакового размера. Я знаю, что когда он имеет одинаковый размер, он просто умножается по элементам. Я предполагаю, что когда они не одного размера, тогда выполняется какая-то трансляция, чтобы изменить размеры одного из массивов, но как?


person Sina    schedule 14.05.2018    source источник
comment
Вещание поначалу не простое, но оно значительно ускорит ваш код. Просто несколько раз прочитайте официальный документ. а потом практиковаться. Вам не нужно использовать multiply, c=a*b тоже подойдет.   -  person Brenlla    schedule 14.05.2018
comment
Также прочитайте этот вопрос: вопросы/11178179/   -  person kwinkunks    schedule 15.05.2018