Exercice de prétraitement de texte
À vous de mettre en pratique les techniques apprises pour nettoyer un texte et obtenir de meilleurs résultats en NLP. Vous devrez retirer les mots vides et les caractères non alphabétiques, lemmatiser, puis appliquer un nouveau sac de mots sur votre texte nettoyé.
Vous partez des mêmes jetons créés dans l'exercice précédent : lower_tokens. La classe Counter est déjà importée.
Cette activité fait partie du cours
Introduction au traitement du langage naturel en Python
Instructions de l’exercice
- Importez la classe
WordNetLemmatizerdepuisnltk.stem. - Créez une liste
alpha_onlyqui ne contient que des caractères alphabétiques. Vous pouvez utiliser la méthode.isalpha()pour le vérifier. - Créez une autre liste appelée
no_stopscomposée des mots dealpha_onlyqui ne sont pas dansenglish_stops. - Initialisez un objet
WordNetLemmatizerappeléwordnet_lemmatizeret utilisez sa méthode.lemmatize()sur les jetons deno_stopspour créer une nouvelle liste appeléelemmatized. - Créez un nouveau
Counterappelébowavec les mots lemmatisés. - Enfin, affichez les 10 jetons les plus fréquents.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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(____.____(__))