ich habe mal wieder eine Frage zur Codegeschwindigkeitsoptimierung.
Folgendes Szenario:
Ich habe eine Menge an Punkten die bestimmten Regionen zu geordnet werden sollen. Diese Zuordnung ist durch einen integer-array gegeben (pnt_region_connectivity). Hierbei ist der index eines Integers im pnt_region_connectivity der gleiche Index wie der Punkt um den es geht. Der Wert des Integers spezifiziert die Region zu welcher der Punkt zu geordnet werden soll. Nun benötige ich einen geschachtelten Array, der in erster Instanz die Regionen repräsentiert und in zweiter Instanz die jeweiligen Punkte beinhaltet.
Mein momentaner Code sieht folgendermaßen aus:
Code: Alles auswählen
import numpy as np
example_pnts = np.random.random((7,4))
pnt_region_connectivity = np.array([0,0,1,0,2,3,3])
nb_regions = 4
regions = []
#
for i in xrange(nb_regions):
regions.append( example_pnts[pnt_region_connectivity==i] )
#
print regions