作者|ISHA5
編譯|Flin
來源|analyticsvidhya
介紹
從開始從事資料可視化作業的那一天起,我就愛上它了,我總是喜歡從資料中獲得有用的見解,
在此之前,我只了解基本圖表,例如條形圖,散點圖,直方圖等,這些基本圖表內置在tableau中,而Power BI則用于資料可視化,通過每天完成此任務,我遇到了許多新圖表,例如徑向儀表盤,華夫圖等,
因此,出于好奇,最近我正在搜索資料可視化中使用的所有圖表型別,這些詞云引起了我的注意,我發現它非常有趣,直到現在,看到這個詞云影像迫使我認為這些只是隨機排列的影像,這些單詞是隨機排列的,但是我錯了,而且一切都從這里開始,之后,我嘗試使用Tableau和Power BI中的少量資料制作詞云,在成功嘗試之后,我想通過撰寫條形圖,餅圖和其他圖表的代碼來嘗試使用它,
詞云是什么?
定義:詞云是一個簡單但功能強大的可視化表示物件,用于文本處理,它以更大,更粗的字母和不同的顏色顯示最常用的詞,單詞的大小越小,重要性就越小,

標簽云的用途
1)社交媒體上的熱門標簽(Instagram,Twitter): 全世界,社交媒體都在尋找最新更新的趨勢,因此,我們可以獲取人們在其帖子中使用最多的標簽,
2)媒體中的熱門話題: 分析新聞報道,我們可以在頭條新聞中找到關鍵字,并提取出前n個需求較高的主題,并獲得所需的結果,即前n個熱門媒體主題,
3)電子商務中的搜索詞: 在電子商務購物網站中,網站所有者可以制作被搜索次數最多的購物商品的詞云,這樣,他就可以了解在特定時期內哪些商品需求量很大,
讓我們開始在python中編碼以實作這種詞云
首先,我們需要在jupyter notebook中安裝所有庫,
在python中,我們將安裝一個內置庫wordcloud,在Anaconda命令提示符下,輸入以下代碼:
pip install wordcloud
如果你的anaconda環境支持conda,請輸入:
conda install wordcloud
雖然,這可以直接在notebook本身中實作,只需在代碼的開頭添加“!”即可,
像這樣:
!pip install wordcloud
現在,在這里,我將生成擁有任何主題的維基百科文本的詞云,因此,我將需要一個Wikipedia庫來訪問Wikipedia API,可以通過在anaconda命令提示符下安裝Wikipedia來完成,如下所示:
pip install wikipedia
現在我們還需要其他一些庫,它們是numpy,matplotlib和pandas,
截至目前,我們需要的庫就安裝好了
import wikipedia
result= wikipedia.page("MachineLearning")
final_result = result.content
print(final_result)
機器學習維基百科頁面的輸出:

上圖是我們通過檢索Wikipedia的機器學習頁面獲得的輸出的影像,在那里,我們還可以看到它可以向下滾動,這表示將檢索整個頁面,
在這里,我們還可以通過摘要方法得到頁面的摘要,如:
result= wikipedia.summary("MachineLearning", sentences=5)
print(result)
這里我們有句子的引數,因此我們可以用它來檢索特定的行數,

輸出5個句子
讓我們一起創建wordcloud
from wordcloud import WordCloud, StopWords
import matplotlib.pyplot as plt
def plot_cloud(wordcloud):
plt.figure(figsize=(10, 10))
plt.imshow(wordcloud)
plt.axis("off");
wordcloud = WordCloud(width = 500, height = 500, background_color='pink', random_state=10).generate(final_result)
plot_cloud(wordcloud)
停用詞是沒有任何含義的單詞,例如‘is’, ‘are’, ‘an’, ‘I’ 等,
Wordcloud帶有內置停用詞庫,該庫將自動從文本中洗掉停用詞,
有趣的是,我們可以通過stopwords.add()函式在python中添加停用詞的選擇,
Wordcloud方法將設定寬度和高度,我將它們都設定為500,背景色設定為粉紅色,如果不添加隨機狀態,則每次運行代碼時,詞云都會看起來不同,應該將其設定為任何int值,
從上面的代碼中,我們將獲得這樣的詞云:

通過查看上圖,我們可以看到機器學習是最常用的詞,還有一些其他經常使用的詞是模型,任務,訓練和資料,因此,我們可以得出結論,機器學習是訓練資料模型的任務,
我們還可以在這里通過背景顏色方法更改背景顏色,并通過colormap方法更改字體顏色,還可以在背景顏色中添加顏色的哈希碼,但是mapcolor帶有內置的特定顏色,
讓我們通過使用哈希碼將背景色更改為藍綠色,將字體顏色更改為藍色:
from wordcloud import WordCloud, StopWords
import matplotlib.pyplot as plt
def plot_cloud(wordcloud):
plt.figure(figsize=(10, 10))
plt.imshow(wordcloud)
plt.axis("off");
wordcloud = WordCloud(width = 500, height = 500, background_color='#40E0D0', colormap="ocean", random_state=10).generate(final_result)
plot_cloud(wordcloud)

在這里,我指定了ocean,如果我添加了一些錯誤的顏色圖,jupyter將拋出一個值錯誤,并向我顯示顏色圖的可用選項,如下所示:

還可以使用PIL庫在任何影像中實作詞云,
尾注
在本文中,我們討論了詞云,詞云的定義,應用領域以及使用jupyter notebook的python示例,
原文鏈接:https://www.analyticsvidhya.com/blog/2020/10/word-cloud-or-tag-cloud-in-python/
歡迎關注磐創AI博客站:
http://panchuang.net/
sklearn機器學習中文官方檔案:
http://sklearn123.com/
歡迎關注磐創博客資源匯總站:
http://docs.panchuang.net/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/206945.html
標籤:其他
