Gracias Carlos!
Que no dije nada.... :-).
Creo que ya lo entiendo pero no he podido meterme con ello..
A ver si mañana o este fin de semana encuentro un hueco para ver qué se me
ocurre.
Un par de dudas adicionales que me surgieron al ver el detalle de tu
respuesta:
- ¿Para el cálculo se usa siempre esa columna "V5" que es la que tiene
las letras?.
- Y claro el objetivo al final es que queda solo una letra tras entrar
a comparar todas las parejas posibles,¿es as�.
- Y eso de la distancia a ese punto definido...
- El punto definido ¿es siempre que has indicado? (0.34, 0.66)?.
AsÃ, de primeras lo que veo es porqué hacen falta dos bucles o un bucle y
un while.
Parece más un proceso recursivo: comienzas con todos los pare de parejas,
reduces y vuelves a aplicar el proceso de comparación con las que quedan.
Por eso lo de aclarar la duda del primer punto anterior.
Gracias,
Carlos.
El mié, 22 sept 2021 a las 18:38, Carlos Santos (<
carlossantos.csm en gmail.com>) escribió:
Perdón he puesto 2000 columnas pero querÃa decir 2000 filas
El mié., 22 sept. 2021 18:34, Carlos Santos <carlossantos.csm en gmail.com>
escribió:
ok Carlos, pongo un ejemplo con pocos registros a ver si puedo
explicarlo mejor:
Datos:
V0 V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
1 63 1 1 145 A 233 1 2 3 0
2 67 1 4 160 A 286 0 2 2 3
3 67 2 4 120 B 229 0 2 2 2
4 37 1 3 130 C 250 0 0 3 0
5 41 1 2 130 C 204 0 2 1 0
6 56 2 2 120 A 236 0 0 1 0
7 62 1 4 140 B 268 0 2 3 2
8 57 2 4 120 C 354 0 0 1 0
9 63 2 4 130 A 254 0 2 2 1
10 53 1 4 140 B 203 1 2 3 0
11 57 2 4 140 B 192 0 0 2 0
12 56 1 2 140 A 294 0 2 2 0
13 56 2 3 130 C 256 1 2 2 1
14 44 2 2 120 B 263 0 0 1 0
15 52 2 3 172 B 199 1 0 1 0
tengo la matriz que sale de V5:
A
B
C
junto las filas de A con B, y obtengo el punto respecto de V2, y me da
(0.33, 0.67), puesto que V2 tiene dos valores, es un porcentaje en
definitiva
junto las filas de A con C, y se obtiene el punto (0.5, 0.5)
obtengo la distancia euclidea de dichos puntos sobre el punto definido,
supongamos (0.34, 066), lo que significa que la menor distancia se obtiene
entre A y B, por lo tanto las filas que tienen A en V5 se cambia su valor a
C, y se obtiene la siguiente matriz, donde V5 ya no tiene la A
V0 V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
1 63 1 1 145 C 233 1 2 3 0
2 67 1 4 160 C 286 0 2 2 3
3 67 2 4 120 B 229 0 2 2 2
4 37 1 3 130 C 250 0 0 3 0
5 41 1 2 130 C 204 0 2 1 0
6 56 2 2 120 C 236 0 0 1 0
7 62 1 4 140 B 268 0 2 3 2
8 57 2 4 120 C 354 0 0 1 0
9 63 2 4 130 C 254 0 2 2 1
10 53 1 4 140 B