Polaryzacja tidy z leksykonem Bing: prosty przykład
Skoro rozumiesz już podstawy złączenia wewnętrznego, zastosujmy je do leksykonu „Bing". Pamiętaj, że funkcja inner_join() pochodzi z pakietu dplyr, a obiekt leksykonu pobiera się za pomocą funkcji get_sentiments() z pakietu tidytext.
Leksykon Bing przypisuje słowom etykiety pozytywne lub negatywne. Kolejne trzy ćwiczenia pozwolą ci lepiej poznać ten konkretny leksykon. Aby skorzystać z get_sentiments(), przekaż do niej ciąg znaków: "afinn", "bing", "nrc" lub "loughran", aby pobrać wybrany leksykon.
Przebieg pracy ze złączeniem wewnętrznym:
- Pobierz odpowiedni leksykon za pomocą
get_sentiments(). - Przekaż leksykon i uporządkowane dane tekstowe do
inner_join(). - Aby
inner_join()działało poprawnie, musi istnieć wspólna nazwa kolumny. Jeśli takie kolumny nie istnieją, zadeklaruj je za pomocą dodatkowego parametrubyrównegocz nazwami kolumn jak poniżej.
object <- x %>%
inner_join(y, by = c("column_from_x" = "column_from_y"))
- Przeprowadź agregację i analizę na przecięciu tabel.
To ćwiczenie jest częścią kursu
Analiza sentymentu w R
Instrukcje do ćwiczenia
Wczytaliśmy ag_txt zawierający pierwsze 100 wierszy z Agamemnona oraz ag_tidy – jego uporządkowaną wersję.
- Dla porównania użyj
polarity()naag_txt. - Pobierz leksykon
"bing", przekazując ten ciąg znaków doget_sentiments(). - Wykonaj
inner_join()zag_tidyibing.- Kolumny ze słowami nazywają się
"term"wag_tidyi"word"w leksykonie, dlatego zadeklaruj argumentby. - Nowy obiekt nazwij
ag_bing_words.
- Kolumny ze słowami nazywają się
- Wyświetl
ag_bing_wordsi przejrzyj część słów, które znalazły się w wyniku. - Przekaż
ag_bing_wordsdocount()dlasentimentza pomocą operatora potoku%>%. Porównaj wynikpolarity()ze stosunkiem liczby sentymentów.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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 %>%
___(___)