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

So sánh & đối chiếu biểu đồ cột xếp chồng

Một cách khác để “xẻ” văn bản là xem tài liệu được tạo thành từ bao nhiêu từ tích cực hoặc tiêu cực. Ví dụ, một bài đánh giá nhà hàng có thể có vài điểm tích cực như "the food was good" nhưng sau đó lại thêm "the restaurant was dirty, the staff was rude and parking was awful." Vì vậy, bạn có thể muốn biết tài liệu dành bao nhiêu cho ngôn ngữ tích cực so với tiêu cực. Trong ví dụ này, tỷ lệ tiêu cực sẽ cao hơn tích cực.

Một phương pháp là count() số từ tích cực và tiêu cực rồi chia cho số lượng từ thể hiện tính chủ quan (subjectivity) được nhận diện. Trong ví dụ đánh giá nhà hàng, "good" được tính là 1 từ tích cực còn "dirty," "rude," và "awful" là 3 từ tiêu cực. Một phép tính đơn giản sẽ cho thấy bài đánh giá này là 25% tích cực và 75% tiêu cực vì có tổng cộng 4 từ liên quan đến tính chủ quan.

Bắt đầu bằng cách thực hiện inner_join() trên một data frame tidy hợp nhất chứa 4 cuốn sách: Agamemnon, Oz, Huck Finn và Moby Dick. Tương tự bài trước, bạn sẽ dùng filter() và grepl().

Để thực hiện count(), bạn phải nhóm dữ liệu theo sách rồi theo cảm xúc (sentiment). Ví dụ, tất cả các từ tích cực của Agamemnon phải được nhóm rồi đếm riêng để không lẫn với các sách khác. May mắn là bạn có thể truyền nhiều biến trực tiếp vào count().

Hướng dẫn 1/3

undefined XP
    1
    2
    3
  • Inner join all_books với bộ từ vựng, nrc.
  • Lọc để giữ các hàng mà sentiment chứa "positive" hoặc "negative". Tức là, dùng grepl() trên cột sentiment, kiểm tra mà không phủ định để giữ lại "positive|negative".
  • Đếm theo book và sentiment.