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ừ dplyr và pivot_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
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ữam_dick_tidyvàbing.- Như trước, nối cột
"term"trongm_dick_tidyvới cột"word"trong lexicon. - Gọi đối tượng mới là
moby_lex_words.
- Như trước, nối cột
- Tạo cột
index, bằng vớias.numeric()áp dụng chodocument. Thực hiện bên trongmutate()của tidyverse. - Tạo
moby_countbằng cách chuyển tiếpmoby_lex_wordsvàocount(), truyền vàosentiment, index. - Tạo
moby_widebằng cách pipemoby_countsangpivot_wider()vớinames_frombằng cộtsentiment,values_frombằng cộtnvà điền giá trị bằngvalues_fill = 0. arrangelà 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