Frequentieanalyse van productreviews
Je hebt nu toegang tot een grotere gegevensset met TechZone-productreviews. Net als eerder heb je de reviews voorbewerkt en omgezet naar een BoW-representatie X. Jouw taak is nu om de woordfrequenties te analyseren en de meest voorkomende termen in de gegevensset te identificeren.
Om te helpen bij de analyse is een hulpfunctie get_top_ten() beschikbaar. Die neemt een lijst met woorden en hun bijbehorende aantallen en geeft de 10 meest frequente woorden met hun tellingen terug.
Deze oefening maakt deel uit van de cursus
Natural Language Processing (NLP) in Python
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
def preprocess(text):
text = text.lower()
tokens = word_tokenize(text)
tokens = [word for word in tokens if word not in string.punctuation]
return " ".join(tokens)
cleaned_reviews = [preprocess(review) for review in product_reviews]
X = vectorizer.fit_transform(cleaned_reviews)
# Get word counts
word_counts = np.____(X.____, axis=0)
# Get words
words = vectorizer.____
top_words_with_stopwords, top_counts_with_stopwords = get_top_ten(words, word_counts)
print(top_words_with_stopwords, top_counts_with_stopwords)