Hi,
hm, das hatte ich befürchtet.
Die Lösung ist bei mir leider nicht so schön aber um das zu erklären muss ich jetzt doch etwas weiter Aushohlen ^^.
Also, ich mache das ganze nicht nur für x=1 und y=1 sondern für alle vorkommenden Kombinationen.
Danach habe ich ja einen z-Array von dem ich dann z.B. die Gaussverteilung berechne.
Nur, ich hab in meinem Fall nicht nur eine z-Achse sondern eher 10 und nicht nur x und y sondern ca. 5 Parameter.
Deshalb hatte ich gehofft sowas machen zu können:
Code: Alles auswählen
import numpy
pos = numpy.array([(1,1,1), (1,2,3), (1,1,4), (1,1,45), (1,2,23)],
dtype=[('x',numpy.float32),('y',numpy.float32),('z',numpy.float32)])
a = ["x", "y"]
for values in numpy.unique(pos[a]):
tmp = pos[pos[a]==values]
Wenn das aber nicht geht, werde ich es wohl so machen müssen:
Code: Alles auswählen
import numpy
pos = numpy.array([(1,1,1), (1,2,3), (1,1,4), (1,1,45), (1,2,23)],
dtype=[('x',numpy.float32),('y',numpy.float32),('z',numpy.float32)])
a = ["x", "y"]
for values in numpy.unique(pos[a]):
tmp = pos
for i in range(len(a)):
tmp = tmp[tmp[a[i]] == values[i]]
Aber hüpsch und übersichtlich ist anders.
Trotzdem vielen Dank für die Antwort!