Cómo calcular la distancia euclidiana en Python (con ejemplos)

Puedes opinar sobre este contenido:
  • 0
  • 0
  • 0
  • 0

La distancia euclidiana entre dos vectores, A y B, se calcula como:

Distancia euclidiana = √ Σ (A i -B i ) 2

Para calcular la distancia euclidiana entre dos vectores en Python, podemos usar la función numpy.linalg.norm :

#import functions 
import numpy as np 
from numpy. norma de importación de linalg

#define dos vectores
 a = np.array ([2, 6, 7, 7, 5, 13, 14, 17, 11, 8])
b = np.array ([3, 5, 5, 3, 7, 12, 13, 19, 22, 7])

#calcular la distancia euclidiana entre los dos vectores 
norma (ab)

12.409673645990857

La distancia euclidiana entre los dos vectores resulta ser 12.40967 .

Tenga en cuenta que esta función producirá un mensaje de advertencia si los dos vectores no tienen la misma longitud:

#import functions 
import numpy as np 
from numpy. norma de importación de linalg

#define dos vectores
 a = np.array ([2, 6, 7, 7, 5, 13, 14])
b = np.array ([3, 5, 5, 3, 7, 12, 13, 19, 22, 7])

#calcular la distancia euclidiana entre los dos vectores 
norma (ab)

ValueError : los operandos no se pudieron transmitir junto con las formas (7,) (10,) 

Tenga en cuenta que también podemos usar esta función para calcular la distancia euclidiana entre dos columnas de un DataFrame de pandas:

#import functions
 import pandas as pd  
import numpy as np 
from numpy. norma de importación de linalg

#define DataFrame con tres columnas
 df = pd.DataFrame ({'points': [25, 12, 15, 14, 19, 23, 25, 29],
                   'asiste': [5, 7, 7, 9, 12, 9, 9, 4],
                   'rebotes': [11, 8, 10, 6, 6, 5, 9, 12]})

#calcular la distancia euclidiana entre 'puntos' y la  
norma de 'asistencias' (df ​​[' puntos '] - df [' asistencias '])

40.496913462633174

La distancia euclidiana entre las dos columnas resulta ser 40,49691 .

Notas

1. Hay varias formas de calcular la distancia euclidiana en Python, pero como explica este hilo de Stack Overflow , el método explicado aquí resulta ser el más rápido.

2. Puede encontrar la documentación completa para la función numpy.linalg.norm aquí .

3. Puede consultar esta página de Wikipedia para obtener más detalles sobre la distancia euclidiana.

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

Deja un comentario

En la investigación, se produce un efecto de techo cuando existe un límite superior en una encuesta o cuestionario y…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!