利用python统计《十九大报告》中的关键词和词频

作者: 传习者戚 | 来源:发表于2017-10-21 04:23 被阅读275次

利用python统计《十九大报告》中的关键词、报告摘要和词频。引用snowNLP。得到的结果:

1、关键词:
前五个关键词为 ['发展', '人民', '中国', '党', '建设']

2、报告摘要:
  强调坚定道路自信、理论自信、制度自信、文化自信;明确全面深化改革总目标是完善和发展中国特色社会主义制度、推进国家治理体系和治理能力现代化;明确全面推进依法治国总目标是建设中国特色社会主义法治体系、建设社会主义法治国家;明确党在新时代的强军目标是建设一支听党指挥、能打胜仗、作风优良的人民军队;
  坚持党的领导、人民当家作主、依法治国有机统一是社会主义政治发展的必然要求;
  必须从理论和实践结合上系统回答新时代坚持和发展什么样的中国特色社会主义、怎样坚持和发展中国特色社会主义。

3、词频最靠前的词语(词语两个字以上):

发展      219
人民      198
中国      186
建设      163
社会主义   146
坚持      131
国家      108
社会      107
全面      93
制度      93
政治      90
实现      85
推进      80
特色      79
文化      79
体系      77
伟大      75
加强      72
改革      69
经济      65
我们      64
时代      64
必须      61
完善      57
安全      54
领导      54
民主      53
创新      53
我国      50

python3.5代码如下:

# author:传习者戚
# email:qijiuzhu@tsinghua.org.cn
# 2017年10月20日

from snownlp import SnowNLP
# 读取文章内容,数据格式是列表list
with open("十九大报告全文.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(5)  # 统计前5个关键词
print("关键词:", keywords)

# 报告摘要
summary = s.summary(3)
print("摘要:", summary)

# 分词
words = s.words  # 分词列表
w = list()
w.append(words)  

# 词频
s = SnowNLP(w)  # 分词列表w,元素为列表
tf = s.tf  # 获取词频
for dictionary in tf:
    # print(dictionary)
    # 字典按键值由大至小排序
    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))

相关文章

  • 利用python统计《十九大报告》中的关键词和词频

    利用python统计《十九大报告》中的关键词、报告摘要和词频。引用snowNLP。得到的结果: 1、关键词:前五个...

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

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

  • 汉语词频统计

    该案例以党的十九大报告为例,统计报告中各个词语出现的频率。总体步骤为读入文本,分词,词频统计。通过观察词语频率最高...

  • 文本挖掘

    1文本词频分析(中英文各一份)及列表的sort()使用2如何利用python统计英文文章词频3主题模型 LDA 入...

  • Python中简单的词频统计

    用的是ipython notebook1.框架是打开文件,写入文件 def count(in_file,out_f...

  • python统计词频

    一、最终目的 统计四六级真题中四六级词汇出现的频率,并提取对应的例句,最终保存到SQL数据库中。 二、处理过程 1...

  • python统计词频

    一、使用re库进行识别 1、代码 2、参考 python--10行代码搞定词频统计python:统计历年英语四六级...

  • python 词频统计

    """Count words.""" def count_words(s, n): """Return the...

  • Python | 词频统计

    最近工作蛮忙的,就简单练习一下python基础吧。 本周的练习是词频统计,主要使用了以下几个函数: text.sp...

  • Python词频统计

    场景: 现在要统计一个文本中的词频,然后按照频率的降序进行排列

网友评论

  • c8866ad38b12:关键词: ['发展', '人民', '中国', '党', '建设']
    摘要: ['明确全面深化改革总目标是完善和发展中国特色社会主义制度、推进国家治理体系和治理能力现代化', '明确全面推进依法治国总目标是建设中国特色社会主义法治体系、建设社会主义法治国家', '这就是必须从理论和实践结合上系统回答新时代坚持和发展什么样的中国特色社会主义、怎样坚持和发展中国特色社会主义']
    发展 219
    人民 198
    中国 188
    建设 163
    社会主义 147
    而且同个程序,同个文本跑出来的结果也不一样
    c8866ad38b12:用的是Python3.5.4、snowlp-0.12.3。
    传习者戚:请查看一下您使用的版本。本地python3.5、snownlp-0.12.3-py3.5。
  • c8866ad38b12:有个问题,按照所给程序做了词频,遇到与一个问题,即得到的统计数与通过Word软件直接的统计是有些微的出入(如一个统计出来的是150,Word里面统计的是159),请问是否是在分词的过程中出现了问题以及如何控制这个问题。
    传习者戚:任何程序都是靠算法实现的。字数和字符数定义不同。当遇有字母数字及特殊符号时,统计规则不同,算法会有不同处理方法。一般地统计上只能靠近,并不能完全一致(包括特殊字符,标点符号;计空格和不计空格抑或带全角空格的处理)。不必太纠结。看总体任务目标是否完成,同时根据程序的处理结果再调整代码,排除一些例外情况。
  • 传习者戚: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) > 3:
          print("%s\t\t%d" % (k, v))

    十九大报告中的成语和固定词语:
    社会主义 146
    中华民族 43
    马克思主义 13
    当家作主 11
    一国两制 10
    坚定不移 8
    意识形态 8
    共产党人 6
    统一战线 5
    发展中国家 5
    精神文明 5
    马克思列宁主义 5
    主要矛盾 5
    代表大会 4
    毫不动摇 4
    非公有制 4
    共产主义 4
    市场经济 3
    旗帜鲜明 3
    综合国力 3
    综合治理 3
    五位一体 3
    人民团体 3
    前所未有 2
    长治久安 2
    深入人心 2
    对外开放 2
    邓小平理论 2
    自然资源 2
    民主集中制 2
    实事求是 2
    民主党派 2
    齐心协力 2
    爱国主义 2
    社会效益 2
    每时每刻 2
    兼收并蓄 2
    稳中求进 2
    落到实处 2
    生产能力 2
    社会制度 2
    繁荣富强 2
    市场准入 2
    中华人民共和国 2
    物质文明 2
    联合作战 2
    居安思危 2
    义务教育 2
    港人治港 2
    高等教育 2
    毛泽东思想 2
    恐怖主义 2
    对外贸易 2
    始终不渝 2
    锲而不舍 1
    爱国人士 1
    艰苦卓绝 1
    义无反顾 1
    安居乐业 1
    埋头苦干 1
    享乐主义 1
    社会保险 1
    不正之风 1
    资本主义 1
    轻轻松松 1
    徇私枉法 1
    名列前茅 1
    自力更生 1
    千年大计 1
    反应灵活 1
    清正廉洁 1
    新民主主义革命 1
    时不我待 1
    国防动员 1
    任人唯贤 1
    同心协力 1
    持之以恒 1
    百花齐放 1
    迎难而上 1
    党群关系 1
    自强不息 1
    自由主义 1
    有史以来 1
    德艺双馨 1
    社会科学 1
    中小企业 1
    一视同仁 1
    自上而下 1
    文明冲突 1
    和平共处 1
    人道主义 1
    少数民族 1
    知识分子 1
    百家争鸣 1
    登高望远 1
    老有所养 1
    形式主义 1
    工人阶级 1
    为民造福 1
    奋发有为 1
    全心全意 1
    自然保护 1
    组成部分 1
    五湖四海 1
    不合时宜 1
    同舟共济 1
    安定团结 1
    发达国家 1
    领导班子 1
    劳动生产率 1
    不懈努力 1
    重中之重 1
    朝气蓬勃 1
    强权政治 1
    生产总值 1
    好人主义 1
    开拓进取 1
    人大代表 1
    气象更新 1
    量力而行 1
    生搬硬套 1
    此起彼伏 1
    各式各样 1
    中共中央 1
    一往无前 1
    至高无上 1
    功在当代 1
    风清气正 1
    艰难险阻 1
    校企合作 1
    必由之路 1
    国计民生 1
    自我批评 1
    精益求精 1
    息息相通 1
    工人运动 1
    党政机关 1
    承前启后 1
    千难万险 1
    动态平衡 1
    移风易俗 1
    前仆后继 1
    按劳分配 1
    求真务实 1
    东西南北中 1
    相互作用 1
    绳之以法 1
    帝国主义 1
    独立自主 1
    发展中国 1
    集体主义 1
    浩浩荡荡 1
    鸦片战争 1
    尽力而为 1
    绝大多数 1
    聪明才智 1
    尊师重教 1
    优胜劣汰 1
    解放思想 1
    肝胆相照 1
    自然规律 1
    任重道远 1
    参政议政 1
    一九四九年 1
    志存高远 1
    平方公里 1
    执政为民 1
    集体经济 1
    自下而上 1
    和而不同 1
    继往开来 1
    艰苦奋斗 1
    官僚主义 1
    一二三产业 1
    职业道德 1
    奢侈浪费 1
    以强凌弱 1
    仁人志士 1
    辩证唯物主义 1
    百分之三十 1
    排忧解难 1
    惩前毖后 1
    勠力同心 1
    低收入者 1
    民族之林 1
    科教兴国 1
    可歌可泣 1
    历史唯物主义 1
    中小城市 1
    国家机关 1
    矢志不渝 1
    应运而生 1
    只争朝夕 1
    不确定性 1
    标本兼治 1
    德才兼备 1
    党政军民 1
    生产方式 1
    不可逆转 1
    治病救人 1
    雷厉风行 1
    积极向上 1
    防微杜渐 1
    休养生息 1
    十月革命 1
    经济效益 1
    个人主义 1
    学前教育 1
    源源不断 1
    脚踏实地 1
    艰苦创业 1
  • 传习者戚:感谢赞赏!:smile::up:

本文标题:利用python统计《十九大报告》中的关键词和词频

本文链接:https://www.haomeiwen.com/subject/emwbuxtx.html