Oefenen met tekstvoorbewerking
Nu ben jij aan de beurt om de technieken toe te passen die je hebt geleerd om tekst op te schonen voor betere NLP-resultaten. Je moet stopwoorden en niet-alfabetische tekens verwijderen, lemmatiseren en een nieuwe bag-of-words uitvoeren op je opgeschoonde tekst.
Je begint met dezelfde tokens die je in de vorige oefening hebt gemaakt: lower_tokens. De klasse Counter is ook al geïmporteerd.
Deze oefening maakt deel uit van de cursus
Introductie tot Natural Language Processing in Python
Oefeninstructies
- Importeer de klasse
WordNetLemmatizeruitnltk.stem. - Maak een lijst
alpha_onlydie alleen alfabetische tekens bevat. Gebruik de methode.isalpha()om dit te checken. - Maak een andere lijst
no_stopsmet woorden uitalpha_onlydie niet inenglish_stopsstaan. - Initialiseer een
WordNetLemmatizer-object met de naamwordnet_lemmatizeren gebruik de.lemmatize()-methode op de tokens inno_stopsom een nieuwe lijstlemmatizedte maken. - Maak een nieuwe
Countermet de naambowmet de gelemmatiseerde woorden. - Print tot slot de 10 meest voorkomende tokens.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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(____.____(__))