python結巴分詞以及詞頻統計實例
發布時間:2018-03-20 14:52,
瀏覽次數:773
, 標簽:
python
# coding=utf-8
'''
Created on 2018年3月19日
@author: chenkai
結巴分詞
支持三種分詞模式:
精確模式: ? ? 試圖將句子最精確地切開,適合文本分析;
全模式: ? ? ? 把句子中所有的可以成詞的詞語都掃描出來, 速度非常快,但是不能解決歧義;
搜索引擎模式: 在精確模式的基礎上,對長詞再次切分,提高召回率,適合用于搜索引擎分詞。
'''
import jieba
import jieba.analyse
seg_list = ?jieba.cut("我來到北京清華大學找妹子,我很開心",cut_all=True)
print ?"全模式: ", "/".join(seg_list)
seg_list2 = ?jieba.cut("我來到北京清華大學找妹子,我很開心",cut_all=False)
print ?"精確模式: ", "/".join(seg_list2)
#jieba.cut() 默認是精確模式
seg_list3 = jieba.cut_for_search("我來到北京清華大學找妹子,我很開心") ?# 搜索引擎模式
print ?"搜索引擎模式: ", "#".join(seg_list3)
list2="/".join(seg_list3)
'''
關鍵詞提取
基于 TF-IDF 算法的關鍵詞抽取
jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())
sentence 為待提取的文本
topK 為返回幾個 TF/IDF 權重最大的關鍵詞,默認值為 20
withWeight 為是否一并返回關鍵詞權重值,默認值為 False
allowPOS 僅包括指定詞性的詞,默認值為空,即不篩選
jieba.analyse.TFIDF(idf_path=None) 新建 TFIDF 實例,idf_path 為 IDF 頻率文件
'''
sentence="我來到北京清華大學找妹子,我很開心"
listGJC=jieba.analyse.extract_tags(sentence, topK=20, withWeight=False,
allowPOS=())
print "關鍵詞提取:",",".join(listGJC)
---------------------詞頻統計
# coding=utf-8
'''
Created on 2018年3月19日
@author: chenkai
結巴分詞
支持三種分詞模式:
精確模式: ? ? 試圖將句子最精確地切開,適合文本分析;
全模式: ? ? ? 把句子中所有的可以成詞的詞語都掃描出來, 速度非常快,但是不能解決歧義;
搜索引擎模式: 在精確模式的基礎上,對長詞再次切分,提高召回率,適合用于搜索引擎分詞。
'''
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import jieba
import jieba.analyse
import re,collections
def getNum(text,path):
word = []
counter = {}
seg_list3 = jieba.cut(text,cut_all=True)
listStr="#".join(seg_list3)
#print ?"全模式: ",listStr
list3 = listStr.decode("utf-8").split('#')
for w in list3:
if not w in word:
word.append(w)
if not w in counter:
counter[w] = 1
else:
counter[w] += 1
counter_list = sorted(counter.items(), key=lambda x: x[1], reverse=True)
#print counter_list
f = open(path,"w")
for j in counter_list:
text= "\""+j[0].encode("gb18030").decode("gb18030")+"\","+str(j[1])
print text
f.write(text+"\n")
print "the result write in "+path+"..."
print "finish..."
f.close()
getNum(sys.argv[1],sys.argv[2])