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

Bing tidy polarity: Đếm & pivot con cá voi trắng

Trong bài này, bạn sẽ áp dụng một inner_join() khác với lexicon "bing".

Sau đó, bạn sẽ thao tác kết quả bằng cả count() từ dplyrpivot_wider() từ tidyr để khai thác thông tin văn bản.

Hàm pivot_wider() trải dữ liệu ra nhiều cột. Trong trường hợp này, sentiment và các giá trị n tương ứng biểu thị tần suất các từ tích cực hoặc tiêu cực cho mỗi dòng. Dùng pivot_wider() sẽ biến đổi dữ liệu để mỗi hàng có cả giá trị positive và negative, kể cả khi là 0.

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

Trong bài này, phiên R của bạn đã có m_dick_tidy chứa cuốn sách Moby Dick và bing, chứa lexicon tương tự bài trước.

  • Thực hiện inner_join() giữa m_dick_tidybing.
    • Như trước, nối cột "term" trong m_dick_tidy với cột "word" trong lexicon.
    • Gọi đối tượng mới là moby_lex_words.
  • Tạo cột index, bằng với as.numeric() áp dụng cho document. Thực hiện bên trong mutate() của tidyverse.
  • Tạo moby_count bằng cách chuyển tiếp moby_lex_words vào count(), truyền vào sentiment, index.
  • Tạo moby_wide bằng cách pipe moby_count sang pivot_wider() với names_from bằng cột sentiment, values_from bằng cột n và điền giá trị bằng values_fill = 0.
  • arrange là pipe tiếp theo để sắp xếp các hàng theo giá trị index

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.

# Inner join
moby_lex_words <- inner_join(___, ___, by = c("___" = "___"))

moby_lex_words <- moby_lex_words %>%
  # Set index to numeric document
  mutate(___ = as.numeric(___))

moby_count <- moby_lex_words %>%
  # Count by sentiment, index
  ___(___, ___)

# Examine the counts
moby_count

moby_wide <- moby_count %>%
  # Pivot the sentiments
  pivot_wider(names_from = ___, values_from = ___, values_fill = ___) %>% 
  arrange(index)

# Review the pivoted data
moby_wide
Chỉnh sửa và Chạy Mã