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

Đám mây so sánh sau khi chuẩn hóa

Bạn còn nhớ hiện tượng "lạm phát điểm" trong điểm polarity của các bài đánh giá chỗ thuê chứ? Đôi khi, một cách khác để tìm ra insight là đưa các điểm này về quanh 0 rồi mới tạo các tập con của corpus. Điều này có nghĩa là một số bình luận trước đây được xếp dương có thể chuyển sang nhóm âm hoặc ngược lại vì giá trị trung bình được đưa về 0. Bài tập này sẽ giúp bạn chuẩn hóa các điểm rồi vẽ lại comparison.cloud(). Loại bỏ "lạm phát điểm" có thể mang lại thêm góc nhìn mới.

Trước đây bạn đã dùng polarity() cho bos_reviews$comments và tạo một comparison.cloud(). Ở bài này bạn sẽ scale() kết quả trước khi tạo comparison.cloud(). Hãy xem biểu đồ có cho thấy điều gì khác không!

Vì đây chủ yếu là bài ôn tập, phần lớn mã đã có sẵn, bạn chỉ cần điền đúng đối tượng và tham số!

Hướng dẫn

100 XP
  • Xem lại một phần bos_pol$all đã nạp sẵn bằng cách lập chỉ mục [1:6,1:3].
  • Thêm cột mới tên scaled_polarity với scale() áp dụng lên cột điểm polarity bos_pol$all$polarity.
  • Với bình luận tích cực, dùng subset() khi cột mới bos_reviews$scaled_polarity lớn hơn (>) 0.
  • Với bình luận tiêu cực, dùng subset() khi cột mới bos_reviews$scaled_polarity nhỏ hơn (<) 0.
  • Tạo pos_terms bằng paste trên pos_comments.
  • Tiếp theo tạo neg_terms với paste() trên neg_comments.
  • Gom các tài liệu đã ghép, pos_terms và neg_terms, vào một corpus duy nhất gọi là all_terms.
  • Theo quy trình tm thường dùng bằng cách lồng VectorSource() trong VCorpus() áp dụng cho all_terms.
  • Tạo TermDocumentMatrix() bằng đối tượng all_corpus. Lưu ý đây là TDM có trọng số TfIdf với các hàm làm sạch cơ bản.
  • Chuyển all_tdm thành all_tdm_m bằng as.matrix(). Sau đó đổi tên các cột trong đoạn mã hiện có thành "positive" và "negative".
  • Cuối cùng! áp dụng comparison.cloud() cho đối tượng ma trận all_tdm_m. Hãy chú ý các từ tiêu cực xuất hiện nhiều nhất mới. Biết đâu bạn sẽ phát hiện thêm insight chưa từng thấy!