自然语言处理(NLP)python

利用Python统计2019年工作报告中的关键词和词频

2019-03-13  本文已影响5人  传习者戚
# author:传习者戚
# email:qijiuzhu@tsinghua.org.cn
# 2019年3月

from snownlp import SnowNLP
import time

# 计时开始
TIME_FORMAT = '%Y-%m-%d %H:%M:%S'
print('{} START'.format(time.strftime(TIME_FORMAT)))

# +++++++++++++++++++++++++++++++++
# 读取文章内容,数据格式是列表list
with open("2019工作报告.txt", "r", encoding="utf-8") as f:
    text_list = f.readlines()
text_string = "".join(t for t in text_list)  # 将列表转为文本字符串str

# 中文字符串处理类
s = SnowNLP(text_string)

# 统计关键词
keywords = s.keywords(10)  # 统计关键词的方法:s.keywords(n) 前n个关键词
print("关键词:", keywords)
#
# 分词
words = s.words  # 分词列表
w = list()
w.append(words)  # 分词列表,列表元素为列表

s = SnowNLP(w)
tf = s.tf  # 词频
for dictionary in tf:
    for k, v in sorted(dictionary.items(), key=lambda d: d[1], reverse=True):
        if len(k) > 1:
            print("%s\t\t%d" % (k, v))
# +++++++++++++++++++++++++++++++++
print()
# 计时结束
print('{} STOP'.format(time.strftime(TIME_FORMAT)))

关键词:
['发展', '改革', '企业', '推进', '经济', '政策', '新', '建设', '服务']


词频:
发展 133
改革 105
经济 65
推进 57
政策 56
企业 55
加强 50
建设 47
社会 44
创新 43
市场 41
加快 40
推动 40
政府 39
全面 38
支持 38
中国 37
服务 36
完善 36
基本 31
坚持 31
深化 31
就业 30
继续 30
促进 30
……

上一篇 下一篇

猜你喜欢

热点阅读