Betrachten Ich habe diese beiden Arrays (einer von ihnen ist eine Liste, in der Tat)Arrayelemente Summieren gemäß einem Flag-Vektor
A = array([[0, 1, 2],[3, 4, 5],[6, 7, 8]])
und
flag = [[55, 55, 00], [55, 00, 33], [0, 33, 33]]
Ich möchte Summenwerte in A mit den entsprechenden Werten in Flag als Schlüssel. Das Ergebnis sollte die Summen der entsprechenden Gruppen für jeden der Werte in A enthalten
Das resultierende Array
B = [[4, 4, 12], [4, 12, 20], [12, 20, 20]]
da beispielsweise sein sollte, wobei die Elemente a11 (0), a12 (1) und a21 (3) haben die gleiche Position des Schlüsselwerts (55) in dem Flag-Array. Jeder hat eine Idee, wie es mit Python geht?
PS: Ich habe die Frage bearbeitet, um es für andere Benutzer, die das gleiche Problem haben, klarer zu machen.
was haben Sie versucht schon? – C8H10N4O2
meinst du 'A [flag == 55] .sum()'? – mgilson
Könntest du ein bisschen besser erklären, welche Art von Logik du zu implementieren versuchst ... eine Flagge 55 würde summieren (0 + 1 + 3) und eine Flagge 33 würde summieren (5 + 7 + 8). Ich verstehe deine Bedeutung nicht – BPL