十九大报告词频分析

1.准备工作

环境要求:Jupyter、python3.7,jieba库,wordcloud库,matplotlib库

2.python代码

#! python3
# -*- coding: utf-8 -*-
import os, codecs
import jieba
from collections import Counter
 
def get_words(txt):
    seg_list = jieba.cut(txt)   #对文本进行分词
    c = Counter()
    for x in seg_list:          #进行词频统计
        if len(x)>1 and x != '\r\n':
            c[x] += 1
    print('常用词频度统计结果')
    for (k,v) in c.most_common(20):      #遍历输出高频词
        print('%s%s %s  %d' % ('  '*(5-len(k)), k, '*'*int(v/3), v))
 
if __name__ == '__main__':
    with codecs.open('19d.txt', 'r', 'utf8') as f:
        txt = f.read()
    get_words(txt)

3.显示效果

4.相应词云

代码

import jieba

import wordcloud

f = open("19d.txt","r",encoding = "utf-8")  #打开文件

t = f.read()        #读取文件,并存好

f.close()

ls = jieba.lcut(t)        #对文本分词

txt = " ".join(ls)        #对文本进行标点空格化

w = wordcloud.WordCloud(font_path = "msyh.ttc",width = 1000,height = 700,background_color = "white")      #设置词云背景,找到字体路径(否则会乱码)

w.generate(txt)     #生成词云

w.to_file("govermentwordcloud.png")    #保存词云图

显示效果

技术总结

1.文件打开时,要注意文件路径是否正确;如果直接使用open打开文件,要把程序与文件放在同一文件夹的同一层级

2.一定要引用字体,否则会出现乱码,引用字体时,路径一般为C:\Windows\Fonts(Windows 10)

3.如果安装库出错,一定要认真看报错内容,最好上相应GitHub官网查看issues版块,一般可以找到解决方案

4.如果要找教程最好找最近时间内的,如果时间久远可能会出现不兼容问题(库更新了)

引用

https://blog.csdn.net/qq_41510951/article/details/82288807

https://blog.csdn.net/onestab/article/details/78307765

https://nbviewer.jupyter.org/github/windard/Python_Lib/blob/master/code/%E4%BD%BF%E7%94%A8%20wordcloud%20%E7%94%9F%E6%88%90%E8%AF%8D%E4%BA%91.ipynb

原文地址:https://www.cnblogs.com/justlikecode/p/10645295.html