Bắt đầu ngayBắt đầu miễn phí

Bing tidy polarity: Ví dụ đơn giản

Giờ bạn đã nắm được cơ bản về inner join, hãy áp dụng vào bộ từ vựng "Bing". Lưu ý hàm inner_join() đến từ dplyr và đối tượng từ vựng được lấy bằng hàm get_sentiments() của tidytext.

Bộ từ vựng Bing gán nhãn từ là tích cực hoặc tiêu cực. Ba bài tập tiếp theo cho phép bạn tương tác với bộ từ vựng này. Để dùng get_sentiments(), truyền vào một chuỗi như "afinn", "bing", "nrc" hoặc "loughran" để tải về bộ từ vựng tương ứng.

Quy trình inner join:

  • Lấy đúng bộ từ vựng bằng get_sentiments().
  • Truyền bộ từ vựng và dữ liệu văn bản tidy vào inner_join().
  • Để inner_join() hoạt động, cần có cột tên chung. Nếu không có, hãy khai báo chúng bằng tham số bổ sung by bằng c với tên cột như dưới đây.
object <- x %>% 
    inner_join(y, by = c("column_from_x" = "column_from_y"))
  • Thực hiện một số tổng hợp và phân tích trên phần giao của hai bảng.

Bài tập này là một phần của khóa học

Phân tích cảm xúc trong R

Xem khóa học

Hướng dẫn bài tập

Chúng tôi đã nạp ag_txt chứa 100 dòng đầu tiên từ Agamemnon và ag_tidy là phiên bản tidy.

  • Để so sánh, dùng polarity() trên ag_txt.
  • Lấy bộ từ vựng "bing" bằng cách truyền chuỗi đó vào get_sentiments().
  • Thực hiện inner_join() với ag_tidybing.
    • Cột từ có tên "term" trong ag_tidy"word" trong bộ từ vựng, nên hãy khai báo đối số by.
    • Đặt tên đối tượng mới là ag_bing_words.
  • In ag_bing_words và xem một số từ xuất hiện trong kết quả.
  • Truyền ag_bing_words sang count() theo sentiment bằng toán tử pipe %>%. So sánh điểm polarity() với tỷ lệ đếm sentiment.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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 %>%
  ___(___)
Chỉnh sửa và Chạy Mã