ساخت ابرکلمات توییتر با پایتون
دیروز مورخ 10 اسفند 98 در حرکتی بسیار جالب که مورد استقبال کاربران قرار گرفته بود، ابرکلمات (WordCloud) توییتهای اخیر کاربران را تحلیل کردم و برای آنها ارسال کردم.
ابتدا خروجی برخی از ابرکلمات رو ببینیم:
همانطور که مشاهده کردید، میخواهیم آموزش ساخت ابرکلمات توییتر با زبان پایتون را به شما آموزش دهیم :))
ساخت ابرکلمات توییتر با پایتون
- نصب پکیج: ابتدا در محیط Jupyter Noteb دستور زير را براي نصب کتابخانه ابرکلمات وارد میکنیم و سپس دستور را Run میکنیم.
pip install wordcloud-fa
حالا یک فایل ایجاد میکنیم و نام دلخواه انتخاب میکنیم: example.ipynb
- ساخت شئ wordcloud
این پکیج، کلاسی به نام wordcloud دارد که باید این کلاس را import کنیم و یک نمونه بسازیم:
from wordcloud_fa import WordCloudFa wordcloud=WordCloudFa()
- آماده کردن متن
متنهای استخراج شده را در یک فایل به نام example.txt ذخیره میکنیم و دستور زیر را وارد و در نهایت اجرا میکنیم:
with open('example.txt', 'r') as file: text = file.read() احتمال دارد که خروجی شما دچار مشکلاتی از جمله جدا جدا بودن حروف کلمات باشد؛ برای این کار یک دستور به ادامه دستور قبلی اضافه میکنیم: with open('example.txt', 'r', encoding="utf-8") as file: text = file.read()
- ساخت ابرکلمات با پایتون، نمایش و ذخیرهی عکس: برای درست کردن ابرکلمات داخل فایل txt، مشاهده کردن و ذخیره کردن به عنوان عکس از دستورات زیر استفاده میکنیم:
word_cloud = wc.generate(text) image = word_cloud.to_image() image.show() image.save('example.png')
اگر میخواهید مانند تصاویر بالا از ماسک استفاده کنید (عکس پرنده توییتر و …) باید تصویر را به آرایهی numpy (یکی از کتابخانههای پایتون) تبدیل کنیم. بنابراین از کد زیر استفاده میکنیم:
import numpy as np from PIL import Image mask_array = np.array(Image.open("Image.png")) wordcloud= WordCloudFa(mask=mask_array)
نکته: با استفاده از Image.open ماژول PIL تصویر را میخوانیم که با استفاده از تابع array ماژول numpy خروجی را به آرایه تبدیل میکند. بدین ترتیب شما میتوانید ابرکلمات را بسازید.
کاربرد ابرکلمات
در دنیای امروزه ابرکلمات برای تحلیل احساسات و رفتار مردم در فضای مجازی بسیار کاربرد دارد. همچنین روانشناسان برای درک بهتر و درمان بیمار خود از چنین ابزارهایی استفاده میکنند. علاوه بر اینها از ابرکلمات برای پیدا کردن کلمه کلیدی در مقالات آموزشی وبسایتها جهت سئو نیز استفاده میشود.
نظرات خود را در ارتباط با آموزش ساخت ابرکلمات توییتر برای ما بنویسید.
بسیار عالی.