Автор оригинала: Pankaj Kumar.
Облако слов с помощью Python
Добро пожаловать в этот учебник на Облако слов с помощью Python Отказ Слово Облако Техника была тенденцией визуализации данных, особенно там, где присутствует текстовые данные.
Следовательно, мы можем сказать, что Слово облако был одним из выдающихся методов визуализации данных с использованием обработки натурального языка (NLP).
Оглавление
- Что такое слово облако?
- Как создать слово облако с помощью Python?
- 1. Установите библиотеки WordCloud и Wikipedia
- 2. Поиск Википедии на основе запроса
- 3. Создайте облачную маску и установите сложные слова
- Полная реализация облака слова с помощью Python
- Заключение
Что такое слово облако?
Извлекив наиболее часто используемые слова в статье, а затем на основе количества времен используется слово.
Большое использование, больше размера слова в словом облако.
Как создать слово облако с помощью Python?
Итак, давайте начнем с создания собственного облака слова, используя Python.
1. Установите библиотеки WordCloud и Wikipedia
Чтобы создать слово облако, нам нужно иметь Python 3.x на наших машинах, а также WordCloud установлены. Чтобы установить WordCloud, вы можете использовать команда PIP :
sudo pip install wordcloud
Для этого я буду пользоваться веб-страницей из Википедии, а именно – Python (язык программирования) Отказ Чтобы использовать содержимое Wikipedia, нам нужно установить Зависимости Wikipedia Отказ
sudo pip install wikipedia
2. Поиск Википедии на основе запроса
Во-первых, мы импортируем Википедия
Библиотека, использующая фрагмент кода ниже:
import wikipedia
Мы будем использовать Поиск
Функция и только сделать первый элемент из этого, поэтому мы используем [0]. Это будет название нашей страницы.
def get_wiki(query): title = wikipedia.search(query)[0] # get wikipedia page for selected title page = wikipedia.page(title) return page.content
После извлечения Название
мы используем Страница ()
и извлечь содержимое страницы. После этого мы вернем только Содержание
страницы, используя Page.content
Отказ
Если вы запустите вышеуказанный код на консоли, вы получите все необработанные данные с сайта на консоли. Но наша задача здесь не заканчивается, нам нужно сделать слово облако.
3. Создайте облачную маску и установите сложные слова
Для начала мы импортируем WordCloud
Библиотека и импортировать определенные пакеты, такие как WordCloud
и Стопварды
Отказ
Мы импортируем Стопварды
Потому что мы хотим удалить основные статьи, такие как а, а и другие общие слова используется на английском языке.
from wordcloud import WordCloud, STOPWORDS
Мы будем использовать Маска
Отказ Эта грубая диаграмма названа как «Cloud.png» в текущем рабочем каталоге, обозначенном Currdir
Отказ Мы откроем это изображение и храним его в Numpy Array.
Наша следующая задача – определить набор стоп-слов и, следовательно, мы используем Set (Стопварды)
Отказ
Мы создаем облако слова, используя объект Python, используя WordCloud
(). Мы пройдем параметры, такие как background_color
, max_words
(Здесь мы выбираем наше ограничение словом как 200), Маска
и Стопварды
Отказ
Затем мы будем использовать wc.cgenerate ()
и пройти необработанный текст в качестве параметра.
Мы также можем сохранить облако слова, создаваемые в файл, и мы назовем его как вывод .png
Отказ
def create_wordcloud(text): mask = np.array(Image.open(path.join(currdir, "cloud.png"))) stopwords = set(STOPWORDS) # create wordcloud object wc = WordCloud(background_color="white", max_words=200, mask=mask, stopwords=stopwords) wc.generate(text) # save wordcloud wc.to_file(path.join(currdir, "output.png"))
Запуск этих 2 функций может принять до 30-40 секунд в первый раз и может уменьшиться в дальнейшем прогона. Полный код и выходное изображение так, как показано ниже в следующем разделе.
Полная реализация облака слова с помощью Python
import sys from os import path import numpy as np from PIL import Image import wikipedia from wordcloud import WordCloud, STOPWORDS currdir = path.dirname(__file__) def get_wiki(query): title = wikipedia.search(query)[0] page = wikipedia.page(title) return page.content def create_wordcloud(text): mask = np.array(Image.open(path.join(currdir, "cloud.png"))) stopwords = set(STOPWORDS) wc = WordCloud(background_color="white", max_words=200, mask=mask, stopwords=stopwords) wc.generate(text) wc.to_file(path.join(currdir, "output.png")) if __name__ == "__main__": query = sys.argv[1] text = get_wiki(query) create_wordcloud(text)
Выход:
Заключение
Создание облака слова с помощью Python является одним из самых простых способов визуализации максимального количества слов, используемых в любом текстовом содержании. Это позволяет легко понять предмет и темы, обсуждаемые в тексте, просто запустив этот код.
Я надеюсь, что вам понравилось эту статью. Дайте нам знать ваши отзывы в разделе «Комментарий» ниже.