Hallo,
Ich habe unten eine Tabelle. Ich möchte den Abstand jedes Indexpunkts vom Rest der Indexpunkte in derselben Gruppe ermitteln, die durch die Kombination von Label1 und Label2 gebildet wird. Für jede Gruppe (wie U1,S1) gibt es in der folgenden Tabelle drei Indexpunkte. Ich muss die Entfernung von Punkt 1 von 2 & 3, 2 von 1 & 3 und 3 von 1 & 2 mit X,Y-Koordinaten berechnen. Ebenso sollte der Abstand jedes Punktes vom Rest der Punkte innerhalb der Gruppe für andere Gruppen wie (U1,S2), (U2,S1) und (U2,S2) berechnet werden. Redundanter Abstand in derselben Gruppe kann entfernt werden, da der Abstand von Punkt 1 von 2 gleich ist wie 2 von 1.
Meine ursprüngliche Tabelle hat mehrere Label1 (U1,U2,...,U10) und Label2 (S1,S2,...S10). Wie kann ich ein Sprungskript (jsl) schreiben, das eine Tabelle wie unten liest und eine Spalte mit Abständen in derselben Tabelle oder einer neuen Tabelle erstellt. Letztendlich versuche ich, die 50 nächsten Nachbarn für jeden Indexpunkt innerhalb derselben Gruppe (Un,Sn) zu finden.
Ich freue mich sehr über jede Anleitung. Vielen Dank.

Auschecken KDTabelle aus dem Scripting-Index, um loszulegen
Names Default To Here(1);
tbl = KDTable([1 2, 3 4, 5 6]);
distance = tbl << Distance between rows(1, 2);
//distance from row 1 to row 2 is:
Show(distance);
{rows, dist} = tbl << K nearest rows(2);
Show(rows, dist);
oder Distanz :
Names Default To Here(1);
exX1 = [1 2, 3 4, 5 6];
/*Compute squared Euclidean distance*/
exD = Distance(exX1, exX1);
//sqrt(exD);