中文詞頻統計與詞雲生成


中文詞頻統計:     作業連接:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2822

1. 下載一長篇中文小說。

2. 從文件讀取待分析文本。

3. 安裝並使用jieba進行中文分詞。

pip install jieba

import jieba

jieba.lcut(text)

4. 更新詞庫,加入所分析對象的專業詞匯。

jieba.add_word('天罡北斗陣')  #逐個添加

jieba.load_userdict(word_dict)  #詞庫文本文件

參考詞庫下載地址:https://pinyin.sogou.com/dict/

轉換代碼:scel_to_text

5. 生成詞頻統計

6. 排序

7. 排除語法型詞匯,代詞、冠詞、連詞等停用詞。

stops

8. 輸出詞頻最大TOP20,把結果存放到文件里

9. 生成詞雲。

 

本案例統計紅樓夢詞頻:

1.在網上下載紅樓夢txt文件

2.使用PyCharm 編譯器自動下載 jieba 包

3.搜狗文庫中下載紅樓夢詞庫,並將詞庫.scel文件轉化為txt文件

4.先將轉化為txt形式的詞庫文件加入,再對紅樓夢文本進行詞頻統計,統計出頻率最高的20個詞:

```

import jieba
txt = open(r"C:\Users\Administrator\Desktop\all.txt",'r',encoding='utf-8').read()
word_dict =r"C:\Users\Administrator\Desktop\11.txt"
jieba.load_userdict(word_dict)
words = jieba.cut(txt)
# 鍵值對形式 {}
counts={}

for word in words:
if len(word)==1:
continue
else:
counts[word] = counts.get(word,0) +1 #遍歷所有,並加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:<5}{1:>5}".format(word, count))

```

5.編譯結果:

曹操 934
孔明 831
將軍 760
卻說 647
玄德 571
關公 509
丞相 488
二人 463
不可 435
荊州 420
孔明曰 384
玄德曰 383
不能 383
如此 376
張飛 348
商議 344
如何 336
主公 327
軍士 309
呂布 299

 

6:詞雲形式:

 ·

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM