在Python中,可以使用jieba包来完成中文分词,并且jieba中的lcut方法可以得到每个词语的权重。
具体实现步骤如下:
- 首先安装jieba包,可以使用pip进行安装
pip install jieba
- 在代码中导入jieba包,并使用lcut方法进行分词
import jieba
text = 'Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。'
words = jieba.lcut(text)
- 使用jieba中的tfidf计算每个词语的权重,并保存到字典中
import jieba.analyse
# 使用tfidf计算词语的权重,并保存到字典中
keywords = jieba.analyse.extract_tags(text, topK=len(words), withWeight=True)
word_weight = dict(keywords)
- 遍历分词结果列表words中的每个词语,获取其权重值
for word in words:
weight = word_weight.get(word, 0.0)
print(word, weight)
在输出结果中,每个词语后面会显示其权重值。
需要注意的是,在使用tfidf计算词语权重时,需要先对文本进行分词处理,并在分词结果基础上进行计算。同时,tfidf也需要制定topK参数来确定保留的关键词个数,这里使用了len(words)来保留所有分词结果。