私のプロジェクトはちょうど私が次の操作を行いたい、バグをキャッチしました:numpyファンシーインデックス(インデックスリストの複数の同じインデックス)で要素ごとの演算子(減算)を実行する方法は?
import numpy as np
a = np.array([1,2,3,4])
b = np.array([5,6,7,8])
a[[0,1,1]] -= b[[0,1,2]]
に2つのインデックス= 1 [xxxは]があるので、私は、このように私は[1にしたい、a[1] = a[1]-b[1]-b[2] = -11
結果は二願っています]を2回減算する。しかし、このnumpyのコードは生成:
array([-4, -4, -5])
私は、アルゴリズム速度を引き上げるnumpyのしたいような理由から、このように私はベクトル化numpyのコードを書きたい(forループのpythonを避ける)
期待される出力は何ですか? – Divakar
'a [1] - = b [[1,2]]。sum()' – BlackBear
c = a [[1,2,2,3]] - b [[1,2,3,4]]とすると、私はc [1] = a [2] -b [2]、c [2] = a [2] -b [2] -b [3] – machen