ÎncepețiÎncepe gratuit

Polaritate tidy cu Bing: Exemplu simplu

Acum că ai înțeles bazele unui inner join, hai să le aplicăm pe lexiconul „Bing". Reține că funcția inner_join() provine din dplyr, iar obiectul lexicon se obține cu funcția get_sentiments() din tidytext.

Lexiconul Bing etichetează cuvintele ca pozitive sau negative. Următoarele trei exerciții te lasă să interacționezi direct cu acest lexicon. Pentru a folosi get_sentiments(), transmite un șir de caractere precum "afinn", "bing", "nrc" sau "loughran" pentru a descărca lexiconul dorit.

Fluxul de lucru cu inner join:

  • Obține lexiconul potrivit folosind get_sentiments().
  • Transmite lexiconul și datele text tidy funcției inner_join().
  • Pentru ca inner_join() să funcționeze, trebuie să existe o coloană comună. Dacă nu există nicio coloană cu același nume, declară-le prin parametrul suplimentar by, egal cu c și numele coloanelor, ca mai jos.
object <- x %>% 
    inner_join(y, by = c("column_from_x" = "column_from_y"))
  • Realizează agregări și analize pe intersecția tabelelor.

Acest exercițiu face parte din cursul

Analiza sentimentelor în R

Vezi cursul

Instrucțiuni pentru exercițiu

Am încărcat ag_txt, care conține primele 100 de rânduri din Agamemnon, și ag_tidy, versiunea tidy a acestuia.

  • Pentru comparație, aplică polarity() pe ag_txt.
  • Obține lexiconul "bing" transmițând acel șir de caractere funcției get_sentiments().
  • Realizează un inner_join() între ag_tidy și bing.
    • Coloana cu cuvinte se numește "term" în ag_tidy și "word" în lexicon, așa că declară argumentul by.
    • Numește noul obiect ag_bing_words.
  • Afișează ag_bing_words și analizează câteva dintre cuvintele din rezultat.
  • Transmite ag_bing_words funcției count() pentru sentiment folosind operatorul pipe, %>%. Compară scorul polarity() cu raportul numărului de sentimente.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Qdap polarity
___

# Get Bing lexicon
bing <- get_sentiments("___")

# Join text to lexicon
ag_bing_words <- ___(___, ___, by = c("___" = "___"))

# Examine
ag_bing_words

# Get counts by sentiment
ag_bing_words %>%
  ___(___)
Editează și rulează codul