Aan de slagGa gratis aan de slag

Snel de basispolarity verkennen

Wanneer je een sentimentanalyse start, kan een snelle polarity() je helpen om verwachtingen te vormen of het probleem te begrijpen. In deze oefening (om tijd te besparen) pas je polarity() toe op een deel van de comments-vector, terwijl het grotere polarity-object op de achtergrond wordt ingeladen.

Met een kernel-dichtheidsplot zou je moeten opmerken dat de reviews zich juist níet rond 0 centreren. Vaak zijn er twee oorzaken voor deze sentiment-"cijferinflatie". Ten eerste kunnen sociale normen ertoe leiden dat respondenten vriendelijk in plaats van neutraal reageren. Dit is uiteraard kanaalspecifiek. Vooral snedige kanalen zoals e-sports of socialmediaberichten kunnen negatief doorslaan, wat leidt tot "deflatie". Deze kanalen hebben andere verwachtingen. Een tweede mogelijke reden is "feature-based sentiment". In sommige reviews schrijft een auteur bijvoorbeeld: "het bed was comfortabel en fijn, maar de keuken was vies en smerig." Het sentiment van dit soort reviews omvat meerdere kenmerken tegelijk en kan daardoor een gemiddeldoordeel vertekenen.

In een volgende oefening pas je deze "cijferinflatie" aan, maar hier verken je de reviews zonder iets te veranderen.

Deze oefening maakt deel uit van de cursus

Sentimentanalyse in R

Cursus bekijken

Oefeninstructies

  • Maak practice_pol met polarity() op de eerste zes reviews zoals in bos_reviews$comments[1:6].
  • Bekijk het geretourneerde polarity-object door practice_pol aan te roepen.
  • Roep summary() aan op practice_pol$all$polarity — dit geeft de algemene polarity voor alle 6 comments.
  • We hebben ook een groter polarity-object voor alle 1000 comments geladen. Dit nieuwe object heet bos_pol. Pas nu summary() toe op het juiste listelement dat alle polarity-scores van bos_pol teruggeeft.
  • De voorbeeldcode heeft een staafdiagram en kernel-dichtheidsplot bijna klaar om te printen. Je moet nog de data frame invullen die alle scores bevat. Tip: in de vorige stap is polarity een kolom van deze data frame.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Practice apply polarity to first 6 reviews
practice_pol <- ___

# Review the object
___

# Check out the practice polarity
___

# Summary for all reviews
___

# Plot Boston polarity all element
ggplot(___, aes(x = polarity, y = ..density..)) + 
  geom_histogram(binwidth = 0.25, fill = "#bada55", colour = "grey60") +
  geom_density(size = 0.75) +
  theme_gdocs() 
Code bewerken en uitvoeren