Trận đấu tay đôi! Đánh giá tích cực: Amazon vs. Google
Các đánh giá tích cực về Amazon dường như nhắc đến các bigram như "good benefits", trong khi các đánh giá tiêu cực tập trung vào các bigram như vấn đề "workload" và "work-life balance".
Ngược lại, các đánh giá tích cực về Google đề cập đến "great food", "perks", "smart people" và "fun culture", cùng nhiều điểm khác. Các đánh giá tiêu cực về Google bàn về "politics", "getting big", "bureaucracy" và "middle management".
Bạn quyết định tạo một biểu đồ hình kim tự tháp (pyramid plot) xếp các đánh giá tích cực cho Amazon và Google để so sánh sự khác biệt giữa các bigram chung.
Chúng tôi đã nạp sẵn một data frame, all_tdm_df, gồm terms và tần suất bigram tương ứng AmazonPro và GooglePro. Dựa trên data frame này, bạn sẽ xác định 5 bigram hàng đầu được chia sẻ giữa hai corpus.
Bài tập này là một phần của khóa học
Khai phá văn bản với Bag-of-Words trong R
Hướng dẫn bài tập
- Tạo
common_wordstừall_tdm_dfbằng các hàm củadplyr.filter()trên cộtAmazonProđể giữ các giá trị khác 0.- Tương tự, lọc cột
GoogleProcho các giá trị khác 0. - Sau đó
mutate()một cột mới,diff, là độ chênh lệch tuyệt đối (abs) giữa các cột tần suất thuật ngữ.
- Dùng pipe chuyển
common_wordsvàoslice_maxđể tạotop5_df, tham chiếu cộtdiffvà lấy top5giá trị. Kết quả sẽ in ra console để bạn xem. - Tạo
pyramid.plot, truyền lần lượttop5_df$AmazonPro, rồitop5_df$GooglePro, và cuối cùng thêm nhãn vớitop5_df$terms.
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.
# Filter to words in common and create an absolute diff column
common_words <- all_tdm_df %>%
filter(
___ != 0,
___ != 0
) %>%
___(diff = ___(___ - ___))
# Extract top 5 common bigrams
(top5_df <- common_words %>% ___(___, n = ___))
# Create the pyramid plot
pyramid.plot(top5_df$___, top5_df$___,
labels = top5_df$___, gap = 12,
top.labels = c("Amzn", "Pro Words", "Goog"),
main = "Words in Common", unit = NULL)