Folosirea asocierilor dintre cuvinte
O altă modalitate de a analiza relațiile dintre cuvinte este funcția findAssocs() din pachetul tm. Pentru orice cuvânt dat, findAssocs() calculează corelația acestuia cu fiecare alt cuvânt dintr-un TDM sau DTM. Scorurile variază de la 0 la 1. Un scor de 1 înseamnă că două cuvinte apar întotdeauna împreună în documente, în timp ce un scor aproape de 0 înseamnă că termenii apar rar în același document.
Reține că findAssocs() realizează calculul la nivel de document. Astfel, pentru fiecare document care conține cuvântul căutat, ceilalți termeni din acele documente specifice sunt asociați. Documentele care nu conțin termenul de căutare sunt ignorate.
Pentru a folosi findAssocs(), transmite un TDM sau DTM, termenul de căutare și o corelație minimă. Funcția va returna o listă cu toți ceilalți termeni care ating sau depășesc pragul minim.
findAssocs(tdm, "word", 0.25)
Valorile minime ale corelației sunt adesea relativ scăzute, din cauza diversității vocabularului. Nu te mira dacă 0.10 reprezintă o asociere puternică între doi termeni.
Tweet-urile despre cafea au fost curățate și organizate în tweets_tdm pentru acest exercițiu. Vei căuta o asociere de termeni, vei prelucra rezultatele cu list_vect2df() din qdap, apoi vei crea un grafic folosind codul ggplot2 din scriptul exemplu.
Acest exercițiu face parte din cursul
Text Mining cu Bag-of-Words în R
Instrucțiuni pentru exercițiu
- Creează
associationsfolosindfindAssocs()petweets_tdm, pentru a găsi termenii asociați cu "venti" care ating un prag minim de0.2. - Vizualizează termenii asociați cu "venti" afișând
associationsîn consolă. - Creează
associations_dfapelândlist_vect2df(), transmițândassociations, apoi setândcol2la"word"șicol3la"score". - Rulează codul
ggplot2pentru a crea un grafic cu puncte al valorilor de asociere.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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()