主要功能包括分詞,添加自定義詞典,關鍵詞提取,詞性標註,並行分詞,Tokenize:返回詞語在原文的起始位置,命令行分詞等功能。python
代碼對 Python 2/3 均兼容dom
全自動安裝:easy_install jieba 或者 pip install jieba / pip3 install jieba函數
半自動安裝:先下載 http://pypi.python.org/pypi/jieba/ ,解壓後運行 python setup.py install字體
手動安裝:將 jieba 目錄放置於當前目錄或者 site-packages 目錄編碼
經過 import jieba 來引用spa
安裝完jieba庫以後,咱們能夠利用其來得到文章中的詞頻。命令行
分析劉慈欣小說《三體》(一二三部合集)出現次數最多的詞語。code
首先下載好《三體》以txt格式、utf-8編碼。導入jieba庫:orm
import jieba
打開文件:blog
txt = open("santi.txt", encoding="utf-8").read()
使用全模式進行分詞,返回列表:
words = jieba.lcut(txt)
定義空集合,並藉此進行進行統計:
counts = {} for word in words: counts[word] = counts.get(word,0) + 1
dict_items轉換爲列表,並以第二個元素排序:
items = list(counts.items()) items.sort(key=lambda x:x[1], reverse=True)
以格式化打印前30名:
for i in range(30): word, count = items[i] print ("{0:<10}{1:>5}".format(word, count))
運行結果以下圖
from wordcloud import WordCloud import matplotlib.pyplot as plt import jieba def create_word_cloud(filename): text = open("百年孤獨.txt","r",encoding='utf-8').read() #打開本身想要的文本 wordlist = jieba.cut(text, cut_all=True) # 結巴分詞 wl = " ".join(wordlist) wc = WordCloud( #設置詞雲 background_color="white", # 設置背景顏色 max_words=20, # 設置最大顯示的詞雲數 font_path='C:/Windows/Fonts/simfang.ttf', # 索引在C盤上的字體庫 height=500, width=500, max_font_size=150, # 設置字體最大值 random_state=150, # 設置有多少種隨機生成狀態,即有多少種配色方案 ) myword = wc.generate(wl) # 生成詞雲 plt.imshow(myword) # 展現詞雲圖 plt.axis("off") plt.show() wc.to_file('img_book.png') # 把詞雲保存下 txt=open("百年孤獨.txt","r",encoding='utf-8').read() #打開本身想要的文本 words=jieba.lcut(txt) counts={} for word in words: if len(word)==1: #排除單個字符的分詞結果 continue else : counts[word]=counts.get(word,0)+1 items=list(counts.items()) items.sort(key=lambda x:x[1],reverse=True) for i in range(20): word,count=items[i] print ("{0:<20}{1:>5}".format(word,count)) if __name__ == '__main__': create_word_cloud('百年孤獨') #運行編輯的函數,得到詞雲