Analyse de sentiment en R
Ted Kwartler
Data Dude
Objectif initial : utiliser la fonction polarity() pour définir des sous-sections du texte à examiner.
pos_comments <- subset(bos_reviews$comments,
bos_reviews$polarity > 0)
neg_comments <- subset(bos_reviews$comments,
bos_reviews$polarity < 0)
pos_terms <- paste(pos_comments, collapse = " ")
neg_terms <- paste(neg_comments, collapse = " ")
Objectif : utiliser les avis de location en format « tidy » pour créer un score de polarité au même format.
library(tidytext)
library(dplyr)
tidy_reviews <- bos_reviews %>%
unnest_tokens(word, comments)
tidy_reviews <- tidy_reviews %>%
group_by(id) %>%
mutate(original_word_order = seq_along(word))
Rappel : le lexique « bing » dans sentiments classe les mots comme positifs ou négatifs.
library(tidytext)
library(tidyr)
library(dplyr)
bing <- sentiments %>%
filter(lexicon == "bing")
pos_neg <- tidy_reviews %>%
inner_join(bing) %>%
count(sentiment) %>%
pivot_wider(names_from = sentiment, values_from = n, values_fill = 0) %>%
mutate(polarity = positive - negative)
Analyse de sentiment en R