Créez un tibble de texte ordonné !
Comme vous avez appris les principes du tidy data, ce code vous aide à organiser vos données dans un tibble pour ensuite travailler dans le tidyverse!
Vous avez vu précédemment qu'appliquer tidy() à un objet TermDocumentMatrix() convertit la TDM en tibble. Dans cet exercice, vous allez créer directement les données de mots à partir de la colonne d'évaluations appelée comments.
Commencez par utiliser unnest_tokens() pour mettre le texte en minuscules et segmenter les évaluations en mots uniques.
Il est parfois utile de conserver l'ordre original des mots à l'intérieur de chaque groupe d'un corpus. Pour ce faire, servez-vous de mutate(). Dans mutate(), vous utiliserez seq_along() pour créer une suite de nombres de 1 jusqu'à la longueur de l'objet. Cela permet de saisir l'ordre des mots tel qu'il a été écrit.
Dans le module tm, vous utiliseriez removeWords() pour retirer les mots vides. Dans le tidyverse, vous devez d'abord charger le lexique des mots vides, puis appliquer un anti_join() entre la trame de texte ordonnée et les mots vides.
Cette activité fait partie du cours
Analyse de sentiment en R
Instructions de l’exercice
- Créez
tidy_reviewsen chaînant (%>%) l'objet d'évaluations originalbos_reviewsà la fonctionunnest_tokens(). Indiquez un nouveau nom de colonne,word, et précisez la colonnecomments. Rappelez-vous que dans le tidyverse, vous n'avez pas besoin de$ni de guillemets. - Créez une nouvelle variable de façon idiomatique! Réécrivez
tidy_reviewsen le chaînant àgroup_byavec la colonneid. Puis%>%de nouveau versmutate(). À l'intérieur de mutate, créez une nouvelle variableoriginal_word_orderégale àseq_along(word). - Affichez le tibble,
tidy_reviews. - Chargez les mots vides « SMART » prêts à l'emploi dans votre session R avec
data("stop_words"). - Écrasez
tidy_reviewsen passant letidy_reviewsoriginal àanti_join()avec un%>%. À l'intérieur deanti_join(), transmettez le lexique prédéfinistop_words.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Vector to tibble
tidy_reviews <- bos_reviews %>%
___(___, ___)
# Group by and mutate
tidy_reviews <- tidy_reviews %>%
___(___) %>%
___(original_word_order = ___(___))
# Quick review
___
# Load stopwords
___
# Perform anti-join
tidy_reviews_without_stopwords <- tidy_reviews %>%
___(___)