Mein Projekt hat nur einen Fehler fangen, ich möchte folgendes tun:wie man element-wise operator (subtract) in numpy fancy index (mehr als ein selbe index in der index-liste) macht?
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]]
Ich hoffe, das Ergebnis zweiten a[1] = a[1]-b[1]-b[2] = -11
, weil es zwei Index = 1 in a [xxx], so dass ich eine wollen [1 ] subtrahiere zweimal. Aber dieser numpy Code nur produzieren:
array([-4, -4, -5])
Aus dem Grund möchte ich numpy meine Algorithmus Geschwindigkeit steigern, also nur ich vectorize numpy Code (vermeiden Python for-Schleife)
Was ist die erwartete Ausgabe? – Divakar
'a [1] - = b [[1,2]]. Sum()' – BlackBear
angenommen c = a [[1,2,2,3]] - b [[1,2,3,4]] , Ich möchte c [1] = a [2] -b [2], c [2] = a [2] -b [2] -b [3] – machen