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ổ sungbybằngcvớ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
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ênag_txt. - Lấy bộ từ vựng
"bing"bằng cách truyền chuỗi đó vàoget_sentiments(). - Thực hiện
inner_join()vớiag_tidyvàbing.- Cột từ có tên
"term"trongag_tidyvà"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.
- Cột từ có tên
- In
ag_bing_wordsvà xem một số từ xuất hiện trong kết quả. - Truyền
ag_bing_wordssangcount()theosentimentbằng toán tử pipe %>%. So sánh điểmpolarity()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 %>%
___(___)