热线电话:13121318867

登录
2019-03-11 阅读量: 797
python结巴分词

结巴分词

支持三种分词模式:

精确模式: 试图将句子最精确地切开,适合文本分析;

全模式: 把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;

搜索引擎模式: 在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。

'''

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])

41.9194
1
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子