5
В NumPy, мы можем выполнить «внешнее дополнение» между двумя векторами a
и b
как это:Может ли numpy einsum() выполнять внешнее дополнение?
a=np.c_[1,2,3]
b=np.c_[4,5,6]
result=a+b.T # alternatively this can be a.T+b
Можно ли использовать einsum
сделать такой же расчет? Любые другие быстрые альтернативы? Как насчет, если a
равно b
?
Я не думаю, что 'einsum' может это сделать (по крайней мере, без использования дополнительных массивов). Я не могу придумать более быстрый способ сделать это, чем простая сумма, использующая широковещательную рассылку, которую вы написали, слишком ли она медленная? Поскольку результат симметричен, вы можете написать расширение, в котором было минимально возможное количество сумм. – jorgeca