ComenzarEmpieza gratis

Lematización por raíces y recompletado en una frase

Considera la siguiente frase como nuestro documento para este ejercicio:

"In a complicated haste, Tom rushed to fix a new complication, too complicatedly."

Esta frase contiene las mismas tres formas de la palabra "complicate" que vimos en el ejercicio anterior. La diferencia aquí es que, aunque llames a stemDocument() sobre esta frase, devolverá la frase sin reducir ninguna palabra a su raíz. Dedica un momento a probarlo en la consola. Asegúrate de incluir los signos de puntuación.

Esto ocurre porque stemDocument() trata la frase completa como una sola palabra. Es decir, nuestro documento es un vector de caracteres de longitud 1, en lugar de longitud n, donde n es el número de palabras del documento. Para solucionar este problema, primero quitamos los signos de puntuación con la función removePunctuation(), que aprendiste hace unos ejercicios. Después aplicamos strsplit() a este vector de caracteres de longitud 1 para pasarlo a longitud n, luego unlist(), y a continuación procedemos a hacer stemming y a recompletar.

No te preocupes si ha sido confuso. ¡Vamos a seguir el proceso paso a paso!

Este ejercicio forma parte del curso

Minería de texto con Bag-of-Words en R

Ver curso

Instrucciones del ejercicio

El documento text_data y el diccionario de completado comp_dict están cargados en tu espacio de trabajo.

  • Quita los signos de puntuación en text_data usando removePunctuation(), asignando el resultado a rm_punc.
  • Llama a strsplit() sobre rm_punc con el argumento split establecido a " ". Anida esto dentro de unlist(), asignando el resultado a n_char_vec.
  • Usa stemDocument() de nuevo para realizar el stemming de palabras en n_char_vec, asignando el resultado a stem_doc.
  • Crea complete_doc recompletando tu documento con raíces usando stemCompletion() y utilizando comp_dict como corpus de referencia.

¿Son stem_doc y complete_doc lo que esperabas?

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Remove punctuation: rm_punc
rm_punc <- ____

# Create character vector: n_char_vec
n_char_vec <- unlist(___(___, split = " "))

# Perform word stemming: stem_doc
stem_doc <- ___

# Print stem_doc
stem_doc

# Re-complete stemmed document: complete_doc
complete_doc <- ___

# Print complete_doc
complete_doc
Editar y ejecutar código