天天看點

【Python】文本分析——詞雲

做的第一個文本分析練習,主要是建構詞雲,文本以朱自清老師的“背影”為例。

分詞

文本分析第一步就是分詞,使用jieba庫進行分詞,因為要做詞雲,是以同時引入wordcloud和matplotlib庫。

import jieba
from wordcloud import WordCloud,STOPWORDS
import matplotlib.pyplot as plt
           

讀入背影文本檔案

content = open(r'G:\Py_code\項目\文本分析\beiying.txt', encoding = 'utf-8')
           

對content進行分詞處理

mylist = list(content)
word_list = [" ".join(jieba.cut(sentence)) for sentence in mylist]
new_text = " ".join(word_list)
           

分詞後的結果(部分):

背影

作者 : 朱自清

我 與 父親 不 相見 已 二年 餘 了 , 我 最 不能 忘記 的 是 他 的 背影 。 那年 冬天 , 祖母 死 了 , 父親 的 差使 也 交卸 了 , 正是 禍不單行 的 日子 , 我 從 北京 到 徐州 , 打算 跟着 父親 奔喪 回家 。 到 徐州 見 着 父親 , 看見 滿院 狼藉 的 東西 , 又 想起 祖母 , 不禁 簌簌 地 流下 眼淚 。 父親 說 , “ 事已如此 , 不必 難過 , 好 在 天無絕人之路 ! ”

建構詞雲

字型設定為雅黑,為了美觀,把坐标軸去掉,設定畫布為800*400(預設為400 *200),wordcloud中還有一個有意思的參數mask,讀取畫布,在非全白的地方填充詞雲,但是要注意此時背景一定要是白色。

wordc = WordCloud(font_path='simhei.ttf', background_color= "white", width=800, height= 400,
                  max_words=2000).generate(new_text)
plt.imshow(wordc)
plt.axis('off')
plt.show()
           

結果展示:

【Python】文本分析——詞雲