Práctica de preprocesamiento de texto
Ahora te toca a ti aplicar las técnicas que has aprendido para limpiar texto y obtener mejores resultados de NLP. Necesitarás eliminar las stop words y los caracteres no alfabéticos, lematizar y crear un nuevo bag-of-words sobre tu texto limpio.
Empiezas con los mismos tokens que creaste en el ejercicio anterior: lower_tokens. También tienes la clase Counter importada.
Este ejercicio forma parte del curso
Introducción al Natural Language Processing en Python
Instrucciones del ejercicio
- Importa la clase
WordNetLemmatizerdenltk.stem. - Crea una lista
alpha_onlyque contenga solo caracteres alfabéticos. Puedes usar el método.isalpha()para comprobarlo. - Crea otra lista llamada
no_stopsque consista en palabras dealpha_onlyque no estén enenglish_stops. - Inicializa un objeto
WordNetLemmatizerllamadowordnet_lemmatizery usa su método.lemmatize()sobre los tokens enno_stopspara crear una nueva lista llamadalemmatized. - Crea un nuevo
Counterllamadobowcon las palabras lematizadas. - Por último, imprime los 10 tokens más comunes.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Import WordNetLemmatizer
____
# Retain alphabetic words: alpha_only
alpha_only = [t for t in ____ if ____]
# Remove all stop words: no_stops
no_stops = [t for t in ____ if t not in ____]
# Instantiate the WordNetLemmatizer
wordnet_lemmatizer = ____
# Lemmatize all tokens into a new list: lemmatized
lemmatized = [____ for t in ____]
# Create the bag-of-words: bow
bow = ____(____)
# Print the 10 most common tokens
print(____.____(__))