文本词频分析_Python初学
生活随笔
收集整理的這篇文章主要介紹了
文本词频分析_Python初学
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目的是將文本的詞頻進行統計分析,并做成詞云
import jieba import matplotlib.pyplot as plt from wordcloud import WordCloud,ImageColorGenerator from imageio import imread# 引入相應的庫,jieba是中文分詞庫,pyplot是作圖,wordcloud是做詞云,imageio是圖像分析# 首先打開要統計的文本 with open('test.txt','r',encoding='UTF-8') as novelFile:novel = novelFile.read() # 其次將一些視作分隔的標點符號,一些詞語導入為list stopwords = [line.strip() for line in open('stop.txt','r',encoding='UTF-8').readlines()]# 利用jieba庫 進行一個精準分詞操作 novelList = list(jieba.lcut(novel)) novelDict = {}# 進行文本詞語統計 for word in novelList:if word not in stopwords:# 不統計字數為1 的詞if len(word) == 1:continueelse:novelDict[word] = novelDict.get(word,0) + 1# 對詞頻進行排序 novelListSorted = list(novelDict.items()) novelListSorted.sort(key= lambda e : e[1],reverse = True)# 打印前10詞頻 topWordNum = 0 for topWordNum in novelListSorted[:10]:print(topWordNum)# 作一個對應的條形圖 x = [c for c,v in novelListSorted] y = [v for c,v in novelListSorted] plt.plot(x[:10],y[:10],color = 'r') plt.show()# 背景圖片 bg_pic = imread('圖1.png')# 使用自定義字體msyh.ttc wordcloud = WordCloud(mask=bg_pic,background_color='white',\scale = 1.5,font_path='msyh.ttc').generate(' '.join(novelDict.keys())) plt.imshow(wordcloud) plt.axis('off') plt.show()wordcloud.to_file('父親.jpg')總結
以上是生活随笔為你收集整理的文本词频分析_Python初学的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 惠普笔记本linux系统启动不了怎么办,
- 下一篇: 用 Python 批量提取 PDF 的图