Python jieba 中文分詞與詞頻統計的操作

我就廢話不多說瞭,大傢還是直接看代碼吧~

#! python3
# -*- coding: utf-8 -*-
import os, codecs
import jieba
from collections import Counter
 
def get_words(txt):
 seg_list = jieba.cut(txt)
 c = Counter()
 for x in seg_list:
  if len(x)>1 and x != '\r\n':
   c[x] += 1
 print('常用詞頻度統計結果')
 for (k,v) in c.most_common(100):
  print('%s%s %s %d' % (' '*(5-len(k)), k, '*'*int(v/3), v))
 
if __name__ == '__main__':
 with codecs.open('19d.txt', 'r', 'utf8') as f:
  txt = f.read()
 get_words(txt)

樣本:十九大報告全文

常用詞頻度統計結果
  發展 ********************************************************************** 212
  中國 ******************************************************** 168
  人民 **************************************************** 157
  建設 ************************************************* 148
 社會主義 ************************************************ 146
  堅持 ******************************************* 130
  國傢 ****************************** 90
  全面 ***************************** 88
  制度 *************************** 83
  實現 *************************** 83
  推進 *************************** 81
  政治 ************************** 80
  社會 ************************** 80
  特色 ************************** 79
  加強 *********************** 71
  體系 ********************** 68
  文化 ********************** 66
  我們 ********************* 64
  時代 ********************* 63
  必須 ******************** 61
  經濟 ******************* 59
  偉大 ******************* 58
  完善 ***************** 51
  我國 **************** 50
  推動 *************** 47
 現代化 *************** 47
  安全 *************** 46
  更加 ************** 44
  民主 ************** 44 

補充:jieba讀取txt文檔並進行分詞、詞頻統計,輸出詞雲圖

代碼實現

# 庫的引用
import jieba
import matplotlib as mpl
import matplotlib.pyplot as plt
from wordcloud import WordCloud
#定義一個空字符串
final = ""
#文件夾位置
filename = r"D:\python\pra\推薦系統1-500.txt"
 
#打開文件夾,讀取內容,並進行分詞
with open(filename,'r',encoding = 'utf-8') as f:
  for line in f.readlines():
    word = jieba.cut(line)
    for i in word:
      final = final + i +" "

運行結果

# 圖雲打印
word_pic = WordCloud(font_path = r'C:\Windows\Fonts\simkai.ttf',width = 2000,height = 1000).generate(final)
plt.imshow(word_pic)
#去掉坐標軸
plt.axis('off')
#保存圖片到相應文件夾
plt.savefig(r'D:\python\pra\6.png')

圖雲輸出圖

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: