Nuage de mots polarisé
Les nuages de mots de similarité mettent en évidence les mots partagés entre plusieurs documents. En revanche, ils ne montrent pas quels mots sont plus fréquents dans un document que dans un autre. Pour cela, il vous faut un diagramme en pyramide, que l’on peut générer avec pyramid.plot() du package plotrix.
Il faut d’abord préparer les données au bon format. Le plus simple est de les convertir en data frame et d’utiliser dplyr. À partir d’une matrice de comptage de mots, comme celle créée par as.matrix(tdm), vous devez obtenir un data frame avec trois colonnes :
- Les mots présents dans chaque document.
- Le nombre d’occurrences de ces mots dans le document 1.
- Le nombre d’occurrences de ces mots dans le document 2.
Ensuite, utilisez pyramid.plot() ainsi :
pyramid.plot(word_count_data$count1, word_count_data$count2, word_count_data$word)
Vous pouvez ajouter des arguments pour améliorer l’apparence du graphique.
Vous allez maintenant explorer les mots fréquents dans les tweets sur le chardonnay, mais rares dans les tweets sur le café. all_dtm_m est déjà créé pour vous.
Cet exercice fait partie du cours
Text mining avec sac de mots en R
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
top25_df <- all_tdm_m %>%
# Convert to data frame
as_tibble(rownames = "___") %>%
# Keep rows where word appears everywhere
filter(if_all(everything(), ___) %>%
# Get difference in counts
mutate(difference = ___) %>%
# Keep rows with biggest difference
slice_max(___, n = ___) %>%
# Arrange by descending difference
arrange(___(___))