Übung zur Textvorverarbeitung
Jetzt bist du dran: Wende die gelernten Techniken an, um Text für bessere NLP-Ergebnisse zu bereinigen. Du musst dafür Stoppwörter und nicht-alphabetische Zeichen entfernen, lemmatisieren und anschließend ein neues Bag-of-Words auf deinem bereinigten Text erstellen.
Du startest mit denselben Tokens wie in der letzten Übung: lower_tokens. Außerdem ist die Klasse Counter bereits importiert.
Diese Übung ist Teil des Kurses
Einführung in Natural Language Processing mit Python
Anleitung zur Übung
- Importiere die Klasse
WordNetLemmatizerausnltk.stem. - Erstelle eine Liste
alpha_only, die nur alphabetische Zeichen enthält. Du kannst dafür die Methode.isalpha()verwenden. - Erstelle eine weitere Liste
no_stops, die aus Wörtern ausalpha_onlybesteht, die nicht inenglish_stopsenthalten sind. - Initialisiere ein
WordNetLemmatizer-Objekt namenswordnet_lemmatizerund verwende die Methode.lemmatize()auf den Tokens inno_stops, um eine neue Listelemmatizedzu erstellen. - Erstelle einen neuen
Counternamensbowmit den lemmatisierten Wörtern. - Gib abschließend die zehn häufigsten Tokens aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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(____.____(__))