python: calculate center of mass

Ich habe einen Datensatz mit 4 Spalten: x,y,z und den Wert ein, sagen wir mal:

x  y  z  value
0  0  0  0
0  1  0  0
0  2  0  0
1  0  0  0
1  1  0  1
1  2  0  1
2  0  0  0
2  1  0  0
2  2  0  0

Ich würde gerne berechnen, die Mitte der Masse CM = (x_m,y_m,z_m) aller Werte. Im vorliegenden Beispiel würde ich mag, um zu sehen (1,1.5,0) als Ausgabe.

Dachte ich, das muss ein triviales problem, aber ich kann nicht finden, eine Lösung, um es in das internet. scipy.ndimage.measurements.center_of_mass scheint das richtige zu sein, aber leider, die Funktion gibt immer zwei Werte (anstatt 3). Außerdem, ich finde keine Dokumentation darüber, wie ein ndimage aus einem array: Würde ich ein numpy-array N der Form (9,4)? Würde dann N[:,0] die x-Koordinate?

Jede Hilfe wird sehr geschätzt.

  • Sorry, was ist die Bedeutung von Wert hier? ist das die Masse? so in der Tat Sie wollen, sind die Mittel der [1 1 0 1] [1 2 0 1]?
  • OK, warum nicht einfach eine Funktion schreiben, die dies tun wird? Es ist triviale Mathematik.
InformationsquelleAutor Felix | 2015-03-30
Schreibe einen Kommentar