Analyse de sentiment sur Twitter

Analyse des données des médias sociaux avec R

Vivek Vijayaraghavan

Data Science Coach

Aperçu de la leçon

  • Qu'est-ce que l'analyse de sentiment ?
  • Effectuer une analyse de sentiment sur des tweets
  • Interpréter pour comprendre opinions et ressentis
Analyse des données des médias sociaux avec R

Analyse de sentiment

  • Repérer la perception d'un produit ou d'une marque
  • Extraire et quantifier avis positifs, négatifs et neutres
  • Émotions comme la confiance, la joie et la colère dans le texte

Émotions de l'analyse de sentiment

Analyse des données des médias sociaux avec R

Importance de l'analyse de sentiment

  • La perception des client·e·s influence l'achat
  • Aide à saisir le pouls de ce que ressentent les client·e·s
  • Démarche proactive pour écouter et interagir directement
Analyse des données des médias sociaux avec R

Fonctionnement de l'analyse de sentiment

  • Bibliothèques d'émotions prédéfinies pour calculer des scores
  • Entraînées et notées selon le sens ou l'intention des mots
  • Chaque mot est coté selon sa proximité avec du positif ou du négatif
  • Même principe pour des émotions précises
Analyse des données des médias sociaux avec R

Étapes de l'analyse de sentiment

Étape 1 de l'analyse de sentiment

Analyse des données des médias sociaux avec R

Étapes de l'analyse de sentiment

Étape 2 de l'analyse de sentiment

Analyse des données des médias sociaux avec R

Étapes de l'analyse de sentiment

Étape 3 de l'analyse de sentiment

Analyse des données des médias sociaux avec R

Étapes de l'analyse de sentiment

Étape 4 de l'analyse de sentiment

Analyse des données des médias sociaux avec R

Extraire des tweets pour l'analyse de sentiment

# Extract tweets on galaxy fold
twts_galxy  <-  search_tweets("galaxy fold", n = 5000, 
                                lang = "en", include_rts = FALSE)
Analyse des données des médias sociaux avec R

Effectuer l'analyse de sentiment

# Perform sentiment analysis for tweets on galaxy fold
library(syuzhet)
sa.value <- get_nrc_sentiment(twts_galxy$text)
Analyse des données des médias sociaux avec R

Afficher les scores de sentiment

# View the sentiment scores
sa.value[1:5,1:7]
anger    anticipation    disgust    fear    joy    sadness    surprise
<dbl>       <dbl>         <dbl>     <dbl>  <dbl>    <dbl>       <dbl> 
0             0             0         0      0        0           0
1             0             0         0      0        0           0
1             1             0         2      1        1           1
0             0             0         1      0        0           0
0             0             0         0      0        0           0
Analyse des données des médias sociaux avec R

Somme des scores de sentiment

# Calculate sum of sentiment scores
score <- colSums(sa.value[,])
Analyse des données des médias sociaux avec R

Trame de données des scores de sentiment

# Convert to data frame
score_df <- data.frame(score)
# View the data frame
score_df
               score
               <dbl>
anger           211            
anticipation    825            
disgust         214            
fear            253            
joy             412            
sadness         197            
surprise        315            
trust           641            
negative        487            
positive       1351
Analyse des données des médias sociaux avec R

Trame de données des scores de sentiment

# Convert row names into 'sentiment' column
# Combine with sentiment scores
sa.score <- cbind(sentiment = row.names(score_df), 
                  score_df, row.names=NULL)
Analyse des données des médias sociaux avec R

Trame de données des scores de sentiment

# View data frame with sentiment scores
print(sa.score)
sentiment      score
<fct>         <dbl>
anger           211            
anticipation    825            
disgust         214            
fear            253            
joy             412            
sadness         197            
surprise        315            
trust           641            
negative        487            
positive        1351    
Analyse des données des médias sociaux avec R

Tracer et visualiser les sentiments

  • Tracer et visualiser les sentiments avec ggplot()
# Plot the sentiment scores
ggplot(data = sa.score2, aes(x = sentiment, y = score, 
       fill = sentiment)) +
       geom_bar(stat = "identity") +
       theme(axis.text.x = element_text(angle = 45, hjust = 1))
Analyse des données des médias sociaux avec R

Visualiser les sentiments

Visualiser les sentiments

Analyse des données des médias sociaux avec R

Passons à la pratique !

Analyse des données des médias sociaux avec R

Preparing Video For Download...