Tenho um array_objetivo e gostaria de encontrar o id e a distância (euclidiana neste exemplo) dos n arrays mais próximos a ele que estão em array_all. Segue exemplos dos arrays. array_objetivo = np.array([2,2,3,4]) array_all = np.array([[1,1,2,2], [2,2,3,3], [3,3,4,4], [4,4,5,5]]) Para encontrar apenas o mais próximo, fiz: def calcula_distancia(array1, array2): # Distância Euclidiana return np.linalg.norm(array1-array2) def pega_vetor_mais_proximo(array_objetivo, array_all): menor_dist = calcula_distancia(array_objetivo, array_all[0]) id_menor_dist = 0 for i in range(1, array_all.shape[0]): dist = calcula_distancia(array_objetivo, array_all) if dist < menor_dist: menor_dist = dist id_menor_dist = i return menor_dist, id_menor_dist Como posso modificar para encontrar os n array mais próximos de maneira eficiente? Continue reading...