1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Phân tích cảm xúc trong R

Connected

Bài tập

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.

Hướng dẫn

100 XP

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_tidy và bing.
    • Cột từ có tên "term" trong ag_tidy và "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.