Utiliser l'association de mots
Une autre façon d'examiner les relations entre les mots consiste à utiliser la fonction findAssocs() du paquet tm. Pour un mot donné, findAssocs() calcule sa corrélation avec chaque autre mot dans une TDM ou une DTM. Les scores vont de 0 à 1. Un score de 1 signifie que deux mots apparaissent toujours ensemble dans les documents, tandis qu'un score proche de 0 signifie qu'ils apparaissent rarement dans le même document.
Gardez en tête que le calcul de findAssocs() se fait au niveau du document. Ainsi, pour chaque document qui contient le mot visé, les autres termes présents dans ces documents précis sont associés. Les documents sans le terme recherché sont ignorés.
Pour utiliser findAssocs(), transmettez une TDM ou une DTM, le terme recherché et une corrélation minimale. La fonction retournera une liste de tous les autres termes qui atteignent ou dépassent ce seuil minimal.
findAssocs(tdm, "word", 0.25)
Les valeurs minimales de corrélation sont souvent relativement faibles en raison de la diversité lexicale. Ne soyez pas surpris si 0.10 met en évidence une association forte entre deux termes.
Les tweets sur le café ont été nettoyés et organisés en tweets_tdm pour l'exercice. Vous allez chercher une association de termes, manipuler les résultats avec list_vect2df() de qdap, puis créer un graphique avec le code ggplot2 fourni dans le script d'exemple.
Cette activité fait partie du cours
Extraction de texte avec sac de mots en R
Instructions de l’exercice
- Créez
associationsavecfindAssocs()surtweets_tdmpour trouver les termes associés à « venti » qui atteignent un seuil minimal de0.2. - Affichez les termes associés à « venti » en imprimant
associationsdans la console. - Créez
associations_dfen appelantlist_vect2df(), en passantassociations, puis en définissantcol2à"word"etcol3à"score". - Exécutez le code
ggplot2pour produire un nuage de points des valeurs d'association.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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()