Aan de slagGa gratis aan de slag

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

Cursus bekijken

Oefeninstructies

  • Importeer de klasse WordNetLemmatizer uit nltk.stem.
  • Maak een lijst alpha_only die alleen alfabetische tekens bevat. Gebruik de methode .isalpha() om dit te checken.
  • Maak een andere lijst no_stops met woorden uit alpha_only die niet in english_stops staan.
  • Initialiseer een WordNetLemmatizer-object met de naam wordnet_lemmatizer en gebruik de .lemmatize()-methode op de tokens in no_stops om een nieuwe lijst lemmatized te maken.
  • Maak een nieuwe Counter met de naam bow met 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(____.____(__))
Code bewerken en uitvoeren