Cómo calcular la distancia de Levenshtein en Python

Actualizado por ultima vez el 7 de mayo de 2021, por .

La distancia de Levenshtein entre dos cadenas es el número mínimo de ediciones de un solo carácter necesarias para convertir una palabra en la otra.

La palabra «ediciones» incluye sustituciones, inserciones y eliminaciones.

Por ejemplo, supongamos que tenemos las siguientes dos palabras:

  • FIESTA
  • PARQUE

La distancia de Levenshtein entre las dos palabras (es decir, el número de ediciones que tenemos que hacer para convertir una palabra en la otra) sería 2 :

Ejemplo de distancia de Levenshtein

En la práctica, la distancia de Levenshtein se utiliza en muchas aplicaciones diferentes, incluida la coincidencia aproximada de cadenas, la revisión ortográfica y el procesamiento del lenguaje natural.

Este tutorial explica cómo calcular la distancia de Levenshtein entre cadenas en Python utilizando el módulo python-Levenshtein.

Puede utilizar la siguiente sintaxis para instalar este módulo:

pip instalar python-Levenshtein

Luego puede cargar la función para calcular la distancia de Levenshtein:

de la distancia de importación de Levenshtein como lev

Los siguientes ejemplos muestran cómo utilizar esta función en la práctica.

Ejemplo 1: distancia de Levenshtein entre dos cadenas

El siguiente código muestra cómo calcular la distancia de Levenshtein entre las dos cadenas «fiesta» y «parque»:

#calcular el nivel de distancia de Levenshtein 
(' fiesta ', ' parque ')

2

La distancia de Levenshtein resulta ser 2 .

Ejemplo 2: distancia de Levenshtein entre dos matrices

El siguiente código muestra cómo calcular la distancia de Levenshtein entre cada combinación de cadenas por pares en dos matrices diferentes:

#define arrays
 a = ['Mavs', 'Spurs', 'Lakers', 'Cavs']
b <- ['Rockets', 'Pacers', 'Warriors', 'Celtics']

#calcular la distancia de Levenshtein entre dos matrices 
para i, k en zip (a, b):
   print (lev (i, k))

6
4
5
5

La forma de interpretar la salida es la siguiente:

  • La distancia de Levenshtein entre ‘Mavs’ y ‘Rockets’ es 6 .
  • La distancia de Levenshtein entre ‘Spurs’ y ‘Pacers’ es 4 .
  • La distancia de Levenshtein entre ‘Lakers’ y ‘Warriors’ es 5 .
  • La distancia de Levenshtein entre ‘Cavs’ y ‘Celtics’ es 5 .

Recursos adicionales

Cómo calcular la distancia de Hamming en Python
Cómo calcular la distancia euclidiana en Python
Cómo calcular la distancia de Mahalanobis en Python

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

Deja un comentario

Una gráfica b ox es un tipo de gráfica que podemos usar para visualizar el resumen de cinco números de…
statologos comunidad-2

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

You have Successfully Subscribed!