Hola,
Tengo una mesa debajo. Quiero encontrar la distancia de cada punto de índice del resto de los puntos de índice en el mismo grupo formado por la combinación de Label1 y Label2. Para cada grupo (como U1, S1) hay tres puntos de índice en la siguiente tabla. Necesito calcular la distancia del punto 1 desde 2 y 3, 2 desde 1 y 3 y 3 desde 1 y 2 usando las coordenadas X, Y. De manera similar, se debe calcular la distancia de cada punto desde el resto de puntos dentro del grupo para otros grupos, así como (U1, S2), (U2, S1) y (U2, S2). La distancia redundante en el mismo grupo se puede eliminar como la distancia del punto 1 al 2 es igual que el 2 al 1.
Mi tabla original tiene varias Label1 (U1, U2, ..., U10) y Label2 (S1, S2, ... S10). ¿Cómo puedo escribir un script de salto (jsl) que lea una tabla como la siguiente y cree una columna de distancias en la misma tabla o en una nueva tabla? En última instancia, estoy tratando de encontrar los 50 vecinos más cercanos para cada punto de índice dentro del mismo grupo (Un, Sn)
Agradeceré mucho cualquier orientación. Gracias.

Verificar KDTable de Scripting Index para empezar
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);
o Distancia :
Names Default To Here(1);
exX1 = [1 2, 3 4, 5 6];
/*Compute squared Euclidean distance*/
exD = Distance(exX1, exX1);
//sqrt(exD);