Compară diagrame cu bare stivuite
O altă modalitate de a analiza textul este să înțelegi cât din document(e) este alcătuit din cuvinte pozitive sau negative. De exemplu, o recenzie de restaurant poate conține aspecte pozitive, precum „mâncarea a fost bună", dar poate continua cu „restaurantul era murdar, personalul a fost nepoliticos, iar parcarea – îngrozitoare." Astfel, s-ar putea să vrei să știi ce proporție din document este dedicată limbajului pozitiv față de cel negativ. În acest exemplu, procentul negativ ar fi mai mare decât cel pozitiv.
O metodă pentru a face asta este să count() cuvintele pozitive și negative, apoi să le împarți la numărul total de cuvinte de subiectivitate identificate. În exemplul cu recenzia de restaurant, „bună" ar conta ca 1 termen pozitiv, iar „murdar", „nepoliticos" și „îngrozitoare" – ca 3 termeni negativi. Un calcul simplu ar conduce la concluzia că recenzia este 25% pozitivă și 75% negativă, deoarece există 4 termeni de subiectivitate.
Începe prin a aplica inner_join() pe un cadru de date tidy unificat care conține 4 cărți: Agamemnon, Oz, Huck Finn și Moby Dick. La fel ca în exercițiul anterior, vei folosi filter() și grepl().
Pentru a aplica count(), trebuie să grupezi datele după carte și după sentiment. De exemplu, toate cuvintele pozitive din Agamemnon trebuie grupate și numărate separat, astfel încât cuvintele pozitive din cărți diferite să nu se amestece. Din fericire, poți transmite mai multe variabile direct în count().
Acest exercițiu face parte din cursul
Analiza sentimentelor în R
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Review tail of all_books
tail(all_books)
# Count by book & sentiment
books_sent_count <- all_books %>%
# Inner join to nrc lexicon
___(___, by = c("term" = "word")) %>%
# Keep only positive or negative
___(__("___", sentiment)) %>%
# Count by book and by sentiment
___(___, ___)
# Review entire object
books_sent_count