python進行分詞及統計詞頻


#!/usr/bin/python
# -*- coding: UTF-8 -*-
#分詞統計詞頻
import jieba
import re
from collections import Counter
content=""
filename=r"../data/commentText.txt";
result = "result_com.txt"
r='[0-9\s+\.\!\/_,$%^*()?;;:-【】+\"\']+|[+——!,;:。?、 ~@#¥%……&*()]+'
with open(filename,'r',encoding='utf-8') as fr:
    print("ss")
    content=re.sub(r," ",fr.read())
    #re.sub(pattern, repl, string, count=0, flags=0)
    # pattern:表示正則表達式中的模式字符串;
    # repl:被替換的字符串(既可以是字符串,也可以是函數);
    # string:要被處理的,要被替換的字符串;
    # count:匹配的次數, 默認是全部替換
    # flags:具體用處不詳
    data=jieba.cut(content,cut_all=False)

data=dict(Counter(data))#dict() 函數用於創建一個字典。Counter 是實現的 dict 的一個子類,可以用來方便地計數。
with open(result,'w',encoding="utf-8")as fw:
     for k,v in data.items():
         if(len(k)>1):
            fw.write(k)
            fw.write("\t%d\n"%v)

  語言:Python3.7 包:jieba counter re

  出錯內容:由於沒有在寫入文件中規定其編碼方式,導致為16進制寫入,設置編碼方式即可


免責聲明!

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



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