Wortassoziationen verwenden
Eine weitere Möglichkeit, über Wortbeziehungen nachzudenken, bietet die Funktion findAssocs() aus dem Paket tm. Für ein beliebiges Wort berechnet findAssocs() dessen Korrelation mit jedem anderen Wort in einem TDM oder DTM. Die Werte liegen zwischen 0 und 1. Ein Wert von 1 bedeutet, dass zwei Wörter in Dokumenten immer gemeinsam auftreten, während ein Wert nahe 0 bedeutet, dass die Begriffe selten im selben Dokument vorkommen.
Beachte, dass die Berechnung von findAssocs() auf Dokumentebene erfolgt. Für jedes einzelne Dokument, das das gesuchte Wort enthält, werden die anderen Begriffe in genau diesen Dokumenten als assoziiert betrachtet. Dokumente ohne den Suchbegriff werden ignoriert.
Um findAssocs() zu verwenden, übergib ein TDM oder DTM, den Suchbegriff und eine minimale Korrelation. Die Funktion gibt eine Liste aller anderen Begriffe zurück, die den Mindestschwellenwert erreichen oder überschreiten.
findAssocs(tdm, "word", 0.25)
Minimale Korrelationswerte sind aufgrund der Wortvielfalt oft relativ niedrig. Es ist nicht ungewöhnlich, dass bereits 0.10 eine starke paarweise Begriffsassoziation zeigt.
Die Coffee-Tweets wurden für die Übung bereinigt und in tweets_tdm organisiert. Du wirst nach einer Begriffsassoziation suchen, die Ergebnisse mit list_vect2df() aus qdap aufbereiten und anschließend mit dem ggplot2-Code im Beispielskript ein Diagramm erstellen.
Diese Übung ist Teil des Kurses
Text Mining mit Bag-of-Words in R
Anleitung zur Übung
- Erzeuge
associationsmitfindAssocs()auftweets_tdm, um Begriffe zu finden, die mit "venti" assoziiert sind und einen minimalen Schwellenwert von0.2erfüllen. - Sieh dir die mit "venti" assoziierten Begriffe an, indem du
associationsin der Konsole ausgibst. - Erzeuge
associations_df, indem dulist_vect2df()aufrufst,associationsübergibst und danncol2auf"word"sowiecol3auf"score"setzt. - Führe den
ggplot2-Code aus, um ein Punktdiagramm der Assoziationswerte zu erstellen.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Create associations
___ <- ___(___, ___, ___)
# View the venti associations
___
# Create associations_df
___ <- ___(___, ___, ___)
# Plot the associations_df values
ggplot(associations_df, aes(score, word)) +
geom_point(size = 3) +
theme_gdocs()