Contenido de este artículo
- 0
- 0
- 0
- 0
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 :
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 R usando la función stringdist () del paquete stringdist en R.
Esta función utiliza la siguiente sintaxis básica:
#cargar paquete stringdist biblioteca (stringdist) #calcular la distancia de Levenshtein entre dos cadenas stringdist (" cadena1 ", " cadena2 ", método = " lv ")
Tenga en cuenta que esta función puede calcular muchas métricas de distancia diferentes. Especificando method = «lv», le decimos a la función que calcule la distancia de Levenshtein.
Ejemplo 1: distancia de Levenshtein entre dos cadenas
El siguiente código muestra cómo calcular la distancia de Levenshtein entre las dos cadenas «party» y «park» usando la función stringdist () :
#cargar paquete stringdist biblioteca (stringdist) #calcular la distancia de Levenshtein entre dos cadenas stringdist (' fiesta ', ' parque ', método = ' lv ') [1] 2
La distancia de Levenshtein resulta ser 2 .
Ejemplo 2: distancia de Levenshtein entre dos vectores
El siguiente código muestra cómo calcular la distancia de Levenshtein entre cada combinación de cadenas por pares en dos vectores diferentes:
#cargar paquete stringdist biblioteca (stringdist) #define los vectores a <- c ('Mavs', 'Spurs', 'Lakers', 'Cavs') b <- c ('Rockets', 'Pacers', 'Warriors', 'Celtics') #calcular la distancia de Levenshtein entre dos vectores stringdist (a, b, method = ' lv ') [1] 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 .
Ejemplo 3: Distancia de Levenshtein entre columnas de marcos de datos
El siguiente código muestra cómo calcular la distancia de Levenshtein entre cada combinación de cadenas por pares en dos columnas diferentes de un marco de datos:
#cargar paquete stringdist biblioteca (stringdist) #define data data <- data.frame (a = c ('Mavs', 'Spurs', 'Lakers', 'Cavs'), b = c ('Rockets', 'Pacers', 'Warriors', 'Celtics')) #calcular la distancia de Levenshtein stringdist (datos $ a, datos $ b, método = ' lv ') [1] 6 4 5 5
Luego, podríamos agregar la distancia de Levenshtein como una nueva columna en el marco de datos si quisiéramos:
#save la distancia de Levenshtein como vector lev <- stringdist (data $ a, data $ b, method = ' lv ') #append Levenshtein distance as new column datos $ lev <- lev #ver datos del marco de datos ab lev 1 Mavs Rockets 6 2 Spurs Pacers 4 3 Lakers Warriors 5 4 Cavs Celtics 5
Recursos adicionales
Cómo calcular la distancia de Hamming en R
Cómo calcular la distancia euclidiana en R
Cómo calcular la distancia de Manhattan en R
- https://r-project.org
- https://www.python.org/
- https://www.stata.com/
¿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: