Đám mây từ tích cực và tiêu cực trong python
Bất cứ khi nào bạn đề cập đến trực quan hóa trong Python, hầu hết mọi người sẽ bắt đầu nghĩ đến biểu đồ thanh, biểu đồ hình tròn, v.v. Nếu dữ liệu của bạn xoay quanh một tập hợp các mục, thì thực sự đây thường là những kiểu trực quan hóa mà bạn thường tạo. Nhưng nếu bạn đang làm việc với các từ và văn bản thì sao? Câu trả lời là đám mây từ Nói một cách đơn giản, đám mây từ là một hình ảnh chứa các từ được hiển thị ở các kích cỡ khác nhau. Kích thước của từ xác định tầm quan trọng của từ - từ càng to và đậm thì từ đó càng xuất hiện thường xuyên trong một khối văn bản nhất định Cài đặt các mô-đunĐể cài đặt các mô-đun cần thiết để tạo các đám mây từ, hãy chạy lệnh sau trong Jupyter Notebook !pip install wordcloud Hãy tận dụng bộ dữ liệu IMDB có tại https. //www. kaggle. com/lakshmi25npathi/imdb-dataset-of-50k-movie-reviews/version/1 Sử dụng Pandas, tải tập dữ liệu dưới dạng DataFrame import pandas as pd Khung dữ liệu có 2 cột và 50.000 hàng Hãy lấy mẫu hàng đầu tiên và in ra nội dung display(df.iloc[0,0]) # review Cột đầu tiên của hàng chứa đánh giá về một bộ phim "One of the other reviewers has mentioned that after watching just 1 Oz episode you'll be hooked. They are right, as this is exactly what happened with me. Cột thứ hai thể hiện cảm xúc của bài đánh giá (cho dù đó là bài đánh giá tích cực hay tiêu cực) 'positive' Vẽ sơ đồ đám mây từMô-đun wordcloud mà chúng ta sẽ sử dụng sẽ tạo ra một đám mây từ dưới dạng hình ảnh. Để hiển thị hình ảnh, chúng ta có thể sử dụng matplotlib. Đối với điều này, hãy định nghĩa một hàm có tên là display(df.iloc[0,0]) # review 2import matplotlib.pyplot as pltdef draw_wordcloud(wordcloud, size): Hàm nhận hai đối số — đối số đầu tiên chứa từ hình ảnh đám mây và đối số thứ hai là kích thước (một bộ chứa chiều rộng và chiều cao) của hình ảnh cần vẽ Tiếp theo, hãy nhập lớp display(df.iloc[0,0]) # review 3 và bộ display(df.iloc[0,0]) # review 4, cũng như mô-đun display(df.iloc[0,0]) # review 5import pandas as pd0 Từ dừng về cơ bản là những từ thường được sử dụng trong bất kỳ ngôn ngữ nào. Bộ display(df.iloc[0,0]) # review 4 chứa danh sách các từ thông dụngimport pandas as pd2 Từ văn bản đánh giá mà chúng ta đã xem trước đó, có một số trường hợp của từ như “ display(df.iloc[0,0]) # review 7”, “display(df.iloc[0,0]) # review 8” và display(df.iloc[0,0]) # review 9, vì vậy hãy thêm chúng vào biến display(df.iloc[0,0]) # review 4 của chúng taimport pandas as pd7 Chúng tôi cũng muốn chọn ngẫu nhiên một bài đánh giá từ khung dữ liệu của mình import pandas as pd8 Cuối cùng, tạo đám mây từ bằng cách tạo một thể hiện của lớp display(df.iloc[0,0]) # review 3 và sau đó gọi phương thức "One of the other reviewers has mentioned that after watching just 1 Oz episode you'll be hooked. They are right, as this is exactly what happened with me. 2 của nóCó thể bạn quan tâmimport pandas as pd0 Lưu ý các tham số khác nhau được cung cấp cho trình khởi tạo của lớp display(df.iloc[0,0]) # review 3
Đây là một ví dụ về một bản đồ màu trong matplotlib Khi đám mây từ được tạo, bạn cần hiển thị nó. Bạn sẽ sử dụng hàm display(df.iloc[0,0]) # review 2 mà bạn đã xác định trước đóimport pandas as pd1 Từ đám mây trông như thế này Bạn cũng có thể lưu đám mây từ vào một tệp bằng phương pháp 'positive' 4import pandas as pd2Tùy chỉnh Word Clouds dựa trên Đánh giá cảm tính Hãy nhớ rằng mỗi bài đánh giá đều có một ý kiến — tích cực hoặc tiêu cực. Hãy nhóm khung dữ liệu theo 'positive' 5, sau đó lấy mẫu hai bài đánh giá tích cực và hai bài đánh giá tiêu cực và vẽ một đám mây từ cho mỗi bài đánh giá. Để phân biệt giữa đánh giá tích cực và tiêu cực, chúng tôi sẽ làm như sau
Đoạn mã sau tạo ra các đám mây từ cho bốn bài phê bình phim import pandas as pd3 Hai đám mây từ sau đây là những đánh giá tiêu cực Hai đám mây từ tiếp theo là những đánh giá tích cực Mô-đun wordcloud có một số tính năng thực sự gọn gàng mà bạn có thể sử dụng để làm cho đám mây từ của mình nổi bật — bạn có thể áp dụng mặt nạ để tạo đám mây từ theo các hình dạng tùy ý
Là một bồi dưỡng về những điều cơ bản của hình ảnh
Tại sao điều này quan trọng để biết? . e. bất kỳ pixel nào không phải là (255,255,255) sẽ được sử dụng để vẽ đám mây từ Hãy thử điều này bằng cách sử dụng hình ảnh này của logo Phương tiện Đoạn mã sau tải hình ảnh Phương tiện dưới dạng một mảng NumPy và sau đó chuyển nó đến tham số 'positive' 8 của lớp display(df.iloc[0,0]) # review 3import pandas as pd4 Lưu ý rằng khi bạn sử dụng mặt nạ để tạo đám mây từ, các tham số "One of the other reviewers has mentioned that after watching just 1 Oz episode you'll be hooked. They are right, as this is exactly what happened with me. 4 và "One of the other reviewers has mentioned that after watching just 1 Oz episode you'll be hooked. They are right, as this is exactly what happened with me. 5 không còn cần thiết nữa vì kích thước của đám mây từ giờ đây sẽ dựa trên kích thước của mặt nạ. Bạn sẽ thấy đầu ra sauMột ví dụ khác, hãy xem xét hình ảnh sau Chúng tôi sẽ áp dụng hình ảnh này làm mặt nạ của đám mây từ được tạo import pandas as pd5 Đám mây từ sẽ trông như thế này Tôi sẽ kết thúc bài viết này bằng cách tạo ra các đám mây từ cho các bài phát biểu Chiến thắng của Obama và Trump. Bài phát biểu của họ có thể được tìm thấy ở đây
Những gì tôi đã làm là trích xuất các bài phát biểu của họ và lưu chúng vào hai tệp văn bản riêng biệt
Hãy tạo đám mây từ cho bài phát biểu chiến thắng của Obama vào năm 2012 import pandas as pd6 Đây là từ đám mây Tiếp theo, tạo đám mây từ cho bài phát biểu chiến thắng của Donald Trump năm 2016 import pandas as pd7 Đây là từ đám mây Nếu bạn muốn danh sách các từ và tần suất tương đối của chúng (với các từ khác), hãy sử dụng thuộc tính import matplotlib.pyplot as pltdef draw_wordcloud(wordcloud, size):2 của đám mây từ được tạo import pandas as pd8 Bạn sẽ thấy một danh sách như thế này import pandas as pd9 Nếu bạn chỉ muốn đếm tần suất của các từ được sử dụng trong bài phát biểu, thì bạn thậm chí không cần tạo một đám mây từ; |