In [1]:
with open('/Users/zhaoenche/desktop/haha/data/gov_reports1954-2016.txt', 'r') as f:
    reports = f.readlines()
In [2]:
len(reports)
Out[2]:
47
In [3]:
print reports[32][:1000]
2002	2002年政府工作报告  ——2002年3月5日在第九届全国人民代表大会第五次会议上		                   国务院总理朱镕基   各位代表:  现在,我代表国务院向大会作政府工作报告,请予审议,并请全国政协各位委员提出意见。  首先报告2001年的工作。  新世纪第一年,全国各族人民在中国共产党领导下,面对复杂多变的国际形势,克服困难,阔步前进,改革开放和社会主义现代化建设取得了新的重大成就。  国民经济保持良好发展势头。在世界经济增长明显减速的情况下,我们坚持扩大内需的方针,坚定地实施积极的财政政策和稳健的货币政策,实现了经济较快增长。2001年国内生产总值达到95933亿元,比上年增长7.3%。经济结构调整取得积极进展。农业结构有所优化,优质、专
In [7]:
%matplotlib inline
import matplotlib.cm as cm
import matplotlib.pyplot as plt
import sys 
import numpy as np
from collections import defaultdict
import statsmodels.api as sm
from wordcloud import WordCloud
import jieba
import matplotlib
import gensim
from gensim import corpora, models, similarities
from gensim.utils import simple_preprocess
from gensim.parsing.preprocessing import STOPWORDS
matplotlib.rcParams['font.sans-serif'] = ['Microsoft YaHei'] 
matplotlib.rc("savefig", dpi=400)
In [8]:
matplotlib.rcParams['font.sans-serif'] = ['Microsoft YaHei']
In [9]:
matplotlib.rcParams
Out[9]:
RcParams({u'agg.path.chunksize': 0,
          u'animation.avconv_args': [],
          u'animation.avconv_path': u'avconv',
          u'animation.bitrate': -1,
          u'animation.codec': u'mpeg4',
          u'animation.convert_args': [],
          u'animation.convert_path': u'convert',
          u'animation.ffmpeg_args': [],
          u'animation.ffmpeg_path': u'ffmpeg',
          u'animation.frame_format': u'png',
          u'animation.html': u'none',
          u'animation.mencoder_args': [],
          u'animation.mencoder_path': u'mencoder',
          u'animation.writer': u'ffmpeg',
          u'axes.axisbelow': False,
          u'axes.edgecolor': u'k',
          u'axes.facecolor': u'w',
          u'axes.formatter.limits': [-7, 7],
          u'axes.formatter.use_locale': False,
          u'axes.formatter.use_mathtext': False,
          u'axes.formatter.useoffset': True,
          u'axes.grid': False,
          u'axes.grid.axis': u'both',
          u'axes.grid.which': u'major',
          u'axes.hold': True,
          u'axes.labelcolor': u'k',
          u'axes.labelpad': 5.0,
          u'axes.labelsize': u'medium',
          u'axes.labelweight': u'normal',
          u'axes.linewidth': 1.0,
          u'axes.prop_cycle': cycler(u'color', [u'b', u'g', u'r', u'c', u'm', u'y', u'k']),
          u'axes.spines.bottom': True,
          u'axes.spines.left': True,
          u'axes.spines.right': True,
          u'axes.spines.top': True,
          u'axes.titlesize': u'large',
          u'axes.titleweight': u'normal',
          u'axes.unicode_minus': True,
          u'axes.xmargin': 0.0,
          u'axes.ymargin': 0.0,
          u'axes3d.grid': True,
          u'backend': 'module://ipykernel.pylab.backend_inline',
          u'backend.qt4': u'PyQt4',
          u'backend.qt5': u'PyQt5',
          u'backend_fallback': True,
          u'boxplot.bootstrap': None,
          u'boxplot.boxprops.color': u'b',
          u'boxplot.boxprops.linestyle': u'-',
          u'boxplot.boxprops.linewidth': 1.0,
          u'boxplot.capprops.color': u'k',
          u'boxplot.capprops.linestyle': u'-',
          u'boxplot.capprops.linewidth': 1.0,
          u'boxplot.flierprops.color': u'b',
          u'boxplot.flierprops.linestyle': u'none',
          u'boxplot.flierprops.linewidth': 1.0,
          u'boxplot.flierprops.marker': u'+',
          u'boxplot.flierprops.markeredgecolor': u'k',
          u'boxplot.flierprops.markerfacecolor': u'b',
          u'boxplot.flierprops.markersize': 6.0,
          u'boxplot.meanline': False,
          u'boxplot.meanprops.color': u'r',
          u'boxplot.meanprops.linestyle': u'-',
          u'boxplot.meanprops.linewidth': 1.0,
          u'boxplot.medianprops.color': u'r',
          u'boxplot.medianprops.linestyle': u'-',
          u'boxplot.medianprops.linewidth': 1.0,
          u'boxplot.notch': False,
          u'boxplot.patchartist': False,
          u'boxplot.showbox': True,
          u'boxplot.showcaps': True,
          u'boxplot.showfliers': True,
          u'boxplot.showmeans': False,
          u'boxplot.vertical': True,
          u'boxplot.whiskerprops.color': u'b',
          u'boxplot.whiskerprops.linestyle': u'--',
          u'boxplot.whiskerprops.linewidth': 1.0,
          u'boxplot.whiskers': 1.5,
          u'contour.corner_mask': True,
          u'contour.negative_linestyle': u'dashed',
          u'datapath': u'//anaconda/lib/python2.7/site-packages/matplotlib/mpl-data',
          u'docstring.hardcopy': False,
          u'errorbar.capsize': 3.0,
          u'examples.directory': u'',
          u'figure.autolayout': False,
          u'figure.dpi': 80.0,
          u'figure.edgecolor': (1, 1, 1, 0),
          u'figure.facecolor': (1, 1, 1, 0),
          u'figure.figsize': [6.0, 4.0],
          u'figure.frameon': True,
          u'figure.max_open_warning': 20,
          u'figure.subplot.bottom': 0.125,
          u'figure.subplot.hspace': 0.2,
          u'figure.subplot.left': 0.125,
          u'figure.subplot.right': 0.9,
          u'figure.subplot.top': 0.9,
          u'figure.subplot.wspace': 0.2,
          u'figure.titlesize': u'medium',
          u'figure.titleweight': u'normal',
          u'font.cursive': [u'Apple Chancery',
                            u'Textile',
                            u'Zapf Chancery',
                            u'Sand',
                            u'Script MT',
                            u'Felipa',
                            u'cursive'],
          u'font.family': [u'sans-serif'],
          u'font.fantasy': [u'Comic Sans MS',
                            u'Chicago',
                            u'Charcoal',
                            u'ImpactWestern',
                            u'Humor Sans',
                            u'fantasy'],
          u'font.monospace': [u'Bitstream Vera Sans Mono',
                              u'DejaVu Sans Mono',
                              u'Andale Mono',
                              u'Nimbus Mono L',
                              u'Courier New',
                              u'Courier',
                              u'Fixed',
                              u'Terminal',
                              u'monospace'],
          u'font.sans-serif': [u'Microsoft YaHei'],
          u'font.serif': [u'Bitstream Vera Serif',
                          u'DejaVu Serif',
                          u'New Century Schoolbook',
                          u'Century Schoolbook L',
                          u'Utopia',
                          u'ITC Bookman',
                          u'Bookman',
                          u'Nimbus Roman No9 L',
                          u'Times New Roman',
                          u'Times',
                          u'Palatino',
                          u'Charter',
                          u'serif'],
          u'font.size': 10.0,
          u'font.stretch': u'normal',
          u'font.style': u'normal',
          u'font.variant': u'normal',
          u'font.weight': u'normal',
          u'grid.alpha': 1.0,
          u'grid.color': u'k',
          u'grid.linestyle': u':',
          u'grid.linewidth': 0.5,
          u'image.aspect': u'equal',
          u'image.cmap': u'jet',
          u'image.composite_image': True,
          u'image.interpolation': u'bilinear',
          u'image.lut': 256,
          u'image.origin': u'upper',
          u'image.resample': False,
          u'interactive': True,
          u'keymap.all_axes': [u'a'],
          u'keymap.back': [u'left', u'c', u'backspace'],
          u'keymap.forward': [u'right', u'v'],
          u'keymap.fullscreen': [u'f', u'ctrl+f'],
          u'keymap.grid': [u'g'],
          u'keymap.home': [u'h', u'r', u'home'],
          u'keymap.pan': [u'p'],
          u'keymap.quit': [u'ctrl+w', u'cmd+w'],
          u'keymap.save': [u's', u'ctrl+s'],
          u'keymap.xscale': [u'k', u'L'],
          u'keymap.yscale': [u'l'],
          u'keymap.zoom': [u'o'],
          u'legend.borderaxespad': 0.5,
          u'legend.borderpad': 0.4,
          u'legend.columnspacing': 2.0,
          u'legend.edgecolor': u'inherit',
          u'legend.facecolor': u'inherit',
          u'legend.fancybox': False,
          u'legend.fontsize': u'large',
          u'legend.framealpha': None,
          u'legend.frameon': True,
          u'legend.handleheight': 0.7,
          u'legend.handlelength': 2.0,
          u'legend.handletextpad': 0.8,
          u'legend.isaxes': True,
          u'legend.labelspacing': 0.5,
          u'legend.loc': u'upper right',
          u'legend.markerscale': 1.0,
          u'legend.numpoints': 2,
          u'legend.scatterpoints': 3,
          u'legend.shadow': False,
          u'lines.antialiased': True,
          u'lines.color': u'b',
          u'lines.dash_capstyle': u'butt',
          u'lines.dash_joinstyle': u'round',
          u'lines.linestyle': u'-',
          u'lines.linewidth': 1.0,
          u'lines.marker': u'None',
          u'lines.markeredgewidth': 0.5,
          u'lines.markersize': 6.0,
          u'lines.solid_capstyle': u'projecting',
          u'lines.solid_joinstyle': u'round',
          u'markers.fillstyle': u'full',
          u'mathtext.bf': u'serif:bold',
          u'mathtext.cal': u'cursive',
          u'mathtext.default': u'it',
          u'mathtext.fallback_to_cm': True,
          u'mathtext.fontset': u'cm',
          u'mathtext.it': u'serif:italic',
          u'mathtext.rm': u'serif',
          u'mathtext.sf': u'sans\\-serif',
          u'mathtext.tt': u'monospace',
          u'nbagg.transparent': True,
          u'patch.antialiased': True,
          u'patch.edgecolor': u'k',
          u'patch.facecolor': u'b',
          u'patch.linewidth': 1.0,
          u'path.effects': [],
          u'path.simplify': True,
          u'path.simplify_threshold': 0.1111111111111111,
          u'path.sketch': None,
          u'path.snap': True,
          u'pdf.compression': 6,
          u'pdf.fonttype': 3,
          u'pdf.inheritcolor': False,
          u'pdf.use14corefonts': False,
          u'pgf.debug': False,
          u'pgf.preamble': [],
          u'pgf.rcfonts': True,
          u'pgf.texsystem': u'xelatex',
          u'plugins.directory': u'.matplotlib_plugins',
          u'polaraxes.grid': True,
          u'ps.distiller.res': 6000,
          u'ps.fonttype': 3,
          u'ps.papersize': u'letter',
          u'ps.useafm': False,
          u'ps.usedistiller': False,
          u'savefig.bbox': None,
          u'savefig.directory': u'~',
          u'savefig.dpi': 400.0,
          u'savefig.edgecolor': u'w',
          u'savefig.facecolor': u'w',
          u'savefig.format': u'png',
          u'savefig.frameon': True,
          u'savefig.jpeg_quality': 95,
          u'savefig.orientation': u'portrait',
          u'savefig.pad_inches': 0.1,
          u'savefig.transparent': False,
          u'svg.fonttype': u'path',
          u'svg.image_inline': True,
          u'svg.image_noscale': False,
          u'text.antialiased': True,
          u'text.color': u'k',
          u'text.dvipnghack': None,
          u'text.hinting': u'auto',
          u'text.hinting_factor': 8,
          u'text.latex.preamble': [],
          u'text.latex.preview': False,
          u'text.latex.unicode': False,
          u'text.usetex': False,
          u'timezone': u'UTC',
          u'tk.window_focus': False,
          u'toolbar': u'toolbar2',
          u'verbose.fileo': u'sys.stdout',
          u'verbose.level': u'silent',
          u'webagg.open_in_browser': True,
          u'webagg.port': 8988,
          u'webagg.port_retries': 50,
          u'xtick.color': u'k',
          u'xtick.direction': u'in',
          u'xtick.labelsize': u'medium',
          u'xtick.major.pad': 4.0,
          u'xtick.major.size': 4.0,
          u'xtick.major.width': 0.5,
          u'xtick.minor.pad': 4.0,
          u'xtick.minor.size': 2.0,
          u'xtick.minor.visible': False,
          u'xtick.minor.width': 0.5,
          u'ytick.color': u'k',
          u'ytick.direction': u'in',
          u'ytick.labelsize': u'medium',
          u'ytick.major.pad': 4.0,
          u'ytick.major.size': 4.0,
          u'ytick.major.width': 0.5,
          u'ytick.minor.pad': 4.0,
          u'ytick.minor.size': 2.0,
          u'ytick.minor.visible': False,
          u'ytick.minor.width': 0.5})
In [10]:
import jieba

seg_list = jieba.cut("我来到北京清华大学", cut_all=True)
print("Full Mode: " + "/ ".join(seg_list))  

seg_list = jieba.cut("我来到北京清华大学", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list)) 

seg_list = jieba.cut("他来到了网易杭研大厦")  
print(", ".join(seg_list))

seg_list = jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造") 
print(", ".join(seg_list))
Building prefix dict from the default dictionary ...
Dumping model to file cache /var/folders/k0/kt6cm7hd3xbgds5ktrxpkg6r0000gn/T/jieba.cache
Loading model cost 1.812 seconds.
Prefix dict has been built succesfully.
Full Mode: 我/ 来到/ 北京/ 清华/ 清华大学/ 华大/ 大学
Default Mode: 我/ 来到/ 北京/ 清华大学
他, 来到, 了, 网易, 杭研, 大厦
小明, 硕士, 毕业, 于, 中国, 科学, 学院, 科学院, 中国科学院, 计算, 计算所, ,, 后, 在, 日本, 京都, 大学, 日本京都大学, 深造
In [11]:
filename = '/Users/zhaoenche/desktop/haha/data/stopwords.txt'
stopwords = {}
f = open(filename, 'r')
line = f.readline().rstrip()
while line:
    stopwords.setdefault(line, 0)
    stopwords[line.decode('utf-8')] = 1
    line = f.readline().rstrip()
f.close()
In [12]:
adding_stopwords = [u'我们', u'要', u'地', u'有', u'这', u'人',
                    u'发展',u'建设',u'加强',u'继续',u'对',u'等',u'推进',u'工作',u'增加']
for s in adding_stopwords: stopwords[s]=10
In [13]:
import jieba.analyse
txt = reports[-1]
tf = jieba.analyse.extract_tags(txt, topK=200, withWeight=True)
In [14]:
print u"、".join([i[0] for i in tf[:50]])
发展、推进、改革、建设、创新、加快、经济、加强、促进、实施、政府、推动、完善、政策、全面、增长、社会、就业、企业、提高、创业、扩大、制度、坚持、一批、深化、人民、落实、支持、农村、试点、实现、安全、合作、工作、我国、动能、机制、加大、服务业、城镇、我们、服务、取得、依法、积极、中国、深入、结构性、民生
In [15]:
plt.hist([i[1] for i in tf])
plt.show()
//anaconda/lib/python2.7/site-packages/matplotlib/font_manager.py:1288: UserWarning: findfont: Font family [u'sans-serif'] not found. Falling back to Bitstream Vera Sans
  (prop.get_family(), self.defaultFamily[fontext]))
In [16]:
tr = jieba.analyse.textrank(txt,topK=200, withWeight=True)
print u"、".join([i[0] for i in tr[:50]])
发展、建设、经济、改革、推进、创新、加强、加快、政府、推动、促进、实施、企业、政策、社会、制度、中国、提高、完善、全面、增长、扩大、支持、实现、工作、机制、人民、创业、服务、农村、试点、地方、坚持、国家、国际、继续、就业、合作、基本、加大、农业、投资、保护、问题、地区、依法、工程、取得、鼓励、建立
In [17]:
plt.hist([i[1] for i in tr])
plt.show()
In [18]:
import pandas as pd

def keywords(index):
    txt = reports[-index]
    tf = jieba.analyse.extract_tags(txt, topK=200, withWeight=True)
    tr = jieba.analyse.textrank(txt,topK=200, withWeight=True)
    tfdata = pd.DataFrame(tf, columns=['word', 'tfidf'])
    trdata = pd.DataFrame(tr, columns=['word', 'textrank'])
    worddata = pd.merge(tfdata, trdata, on='word')
    plt.plot(worddata.tfidf, worddata.textrank, linestyle='',marker='.')
    for i in range(len(worddata.word)):
        plt.text(worddata.tfidf[i], worddata.textrank[i], worddata.word[i], 
                 fontsize = worddata.textrank[i]*15, color = 'red', rotation = 0)
    plt.title(txt[:4])
    plt.xlabel('Tf-Idf')
    plt.ylabel('TextRank')
    plt.show()
In [19]:
keywords(1)
In [20]:
keywords(2)
In [21]:
keywords(3)
In [26]:
def wordcloudplot(txt, year):
    wordcloud = WordCloud(font_path='/Users/zhaoenche/desktop/haha/data/msyh.ttf').generate(txt)
    plt.imshow(wordcloud)
    plt.title(year)
    plt.axis("off")
In [27]:
txt = reports[-1]
tfidf200= jieba.analyse.extract_tags(txt, topK=200, withWeight=False)
seg_list = jieba.cut(txt, cut_all=False)
seg_list = [i for i in seg_list if i in tfidf200]
txt200 = r' '.join(seg_list)
wordcloudplot(txt200, txt[:4]) 
In [28]:
wordfreq = defaultdict(int)
for i in seg_list:
    wordfreq[i] +=1
wordfreq = [[i, wordfreq[i]] for i in wordfreq]

wordfreq.sort(key= lambda x:x[1], reverse = True )
print u"、 ".join([ i[0] + u'(' + str(i[1]) +u')' for i in wordfreq ])
发展(139)、 建设(68)、 经济(67)、 改革(62)、 推进(62)、 创新(56)、 加快(42)、 加强(41)、 政府(40)、 促进(37)、 实施(36)、 增长(36)、 企业(35)、 政策(35)、 推动(34)、 社会(34)、 中国(32)、 提高(31)、 我们(30)、 全面(28)、 完善(27)、 扩大(26)、 工作(26)、 制度(26)、 实现(25)、 就业(24)、 人民(24)、 支持(24)、 坚持(23)、 我国(22)、 国家(21)、 一批(21)、 创业(21)、 安全(21)、 农村(20)、 合作(20)、 国际(20)、 继续(19)、 地方(19)、 服务(19)、 投资(19)、 积极(19)、 取得(19)、 基本(18)、 落实(18)、 加大(18)、 机制(18)、 今年(18)、 地区(17)、 问题(17)、 农业(17)、 深化(17)、 主要(17)、 国内(16)、 工程(16)、 试点(16)、 目标(16)、 以上(16)、 城镇(15)、 保护(15)、 深入(15)、 重大(15)、 服务业(14)、 必须(14)、 增加(14)、 群众(14)、 动能(14)、 持续(14)、 依法(14)、 重点(14)、 产业(13)、 提升(13)、 改造(13)、 基金(13)、 金融(13)、 产能(13)、 供给(13)、 战略(13)、 稳定(13)、 力度(13)、 减少(13)、 领域(13)、 结构性(13)、 民生(13)、 结构(12)、 建成(12)、 教育(12)、 解决(12)、 增强(12)、 水平(12)、 消费(12)、 生活(12)、 升级(12)、 鼓励(12)、 方式(12)、 建立(12)、 改善(12)、 困难(11)、 全国(11)、 培育(11)、 开展(11)、 坚决(11)、 达到(11)、 城乡(11)、 综合(11)、 下降(10)、 生产总值(10)、 健康(10)、 特色(10)、 优化(10)、 住房(10)、 规模(10)、 风险(10)、 任务(10)、 管理(10)、 项目(10)、 质量(10)、 保障(10)、 更加(10)、 实行(10)、 亿元(10)、 新增(10)、 治理(10)、 代表(10)、 监管(10)、 贸易(10)、 文化(10)、 体制(9)、 开放(9)、 各位(9)、 人口(9)、 小康社会(9)、 标准(9)、 新型(9)、 基础设施(9)、 抓好(9)、 环境(9)、 区域(9)、 协调(9)、 绿色(9)、 着力(9)、 维护(9)、 融资(9)、 现代(9)、 科技(9)、 范围(9)、 民族(9)、 城市(9)、 合理(8)、 五年(8)、 大力(8)、 大国(8)、 医疗(8)、 社会主义(8)、 制定(8)、 突出(8)、 转移(8)、 行政(8)、 经济社会(8)、 脱贫(8)、 国有企业(8)、 引导(8)、 健全(8)、 现代化(8)、 城镇化(8)、 启动(8)、 覆盖(8)、 各族人民(8)、 财政(8)、 做好(8)、 切实(7)、 万人(7)、 生态(7)、 打造(7)、 构建(7)、 市场化(7)、 三是(7)、 适度(7)、 法治(7)、 规范(7)、 融合(7)、 万亿元(7)、 改革开放(6)、 贫困地区(6)、 扶贫(6)、 万公里(6)、 中西部(6)、 习近平(6)、 高校(6)、 引领(6)、 统筹(6)、 万套(5)、 棚户区(5)、 严厉打击(5)、 2020(5)、 自贸(4)、 6.5(4)、 80(4)、 60(4)、 2000(4)
In [29]:
txt = reports[-1]
seg_list = jieba.cut(txt, cut_all=False)
seg_list = [i for i in seg_list if i not in stopwords]
txt = r' '.join(seg_list)
wordcloudplot(txt, txt[:4]) 
In [41]:
for txt in reports:
    seg_list = jieba.cut(txt, cut_all=False)
    seg_list = [i for i in seg_list if i not in stopwords]
    txt = r' '.join(seg_list)
    wordcloudplot(txt, txt[:4]) 
    file_path = '/Users/zhaoenche/desktop/github-zhao-' + txt[:4] + '.png'
    plt.savefig(file_path,dpi = 400, bbox_inches="tight",transparent = True)
In [36]:
import jieba.analyse

wordset = []
for txt in reports:
    top20= jieba.analyse.textrank(txt, topK=200, withWeight=False)
    for w in top20:
        if w not in wordset:
            wordset.append(w)
In [39]:
len(wordset)
Out[39]:
1292
In [38]:
print ' '.join(wordset)
国家 人民 工业 发展 建设 工作 生产 美国 企业 经济 计划 社会主义 中国 进行 全国 技术 亚洲 集团 需要 问题 农业 方面 完成 建立 台湾 生活 事业 没有 改造 应当 资本主义 增加 关系 组织 保证 会议 侵略 不能 注意 加强 战争 提高 社会 文化 继续 政府 现代化 能够 日内瓦 世界 东南亚 运动 起来 参加 苏联 少数民族 协议 管理 浪费 实行 群众 机关 采取 解决 得到 制度 现象 条约 改善 领导 资金 革命 集体 职工 任务 政策 地方 增长 斗争 商业 工作人员 合作 情况 农民 规定 恢复 日本 卖国 法律 比重 解放 物质 实现 劳动 原则 改进 力量 城市 工程 时期 破坏 企图 朝鲜 研究 印度支那 总产值 帮助 地区 扩大 重工业 保障 合理 教育 产品 财政 作用 依靠 才能 民主 成为 巩固 华侨 中央 任意 培养 收购 制造厂 要求 分子 供应 权利 代表 粮食 包括 棉花 基础 推广 使用 表现 节约 国际 水平 损失 公私合营 行政 全部 宪法 防务 忽视 防洪 人才 不够 产量 思想 容许 国民经济 还有 等于 准备 加以 时候 希望 干涉 大家 商品 民族 经验 大陆 适应 胜利 不顾 领土 五年计划 克服 中华人民共和国 设备 工业化 决定 达到 活动 国营商业 势力 缺点 加紧 有关 联系 支持 已有 满足 指导 开展 发挥 市场 独立 铁路 昌都地区 保卫 部门 正义 知识分子 应该 可能 投资 增产 单位 设计 工人 条件 制造 形式 建成 原料 手工业 工厂 开始 办法 资本家 规模 新建 农村 例如 过渡时期 认为 工业生产 干部 大量 职员 施工 减少 学习 土地 帝国主义 利用 援助 数量 限额 人员 指标 厂矿 加工 汽车 种类 速度 工人阶级 原有 学校 质量 科学技术 方针 政治 轻工业 错误 措施 定货 合作化 改变 经营 统治 接受 周转量 试制 改建 材料 个体 道路 工业品 面积 积极性 薯类 产值 重点 实际 建筑 促进 水利 所有制 消费品 总任务 历史 掌握 非生产性 标准 比例 预算 支出 收入 部分 执行 国营 立井 公路 项目 税收 总数 片面 数字 价格 钢材 扣除 国营企业 预计 收支 状况 兰州 拨付 货物 水库 工业部 降低 可比 过程 储备 包头 决算 铺轨 军备 超过 新疆 去年同期 统计 获得 用于 农户 经费 水利工程 修建 开支 数额 物资 公方 电厂 调整 结果 投入 鹤岗 信贷资金 工资 月份 利润 建筑安装 设法 自筹 贯通 发生 乡村 费用 影响 预备 收到 通车 中央预算 年收入 零售总额 变化 住宅 是否 西藏 全面 机器设备 银行 淮河 附加 煤炭 灌溉面积 奖励制度 联合 水泥 分配 科学 基本 资产阶级 提出 存在 右派分子 取得 日益 学生 工农 条例 集中 科学家 机构 科学研究 建议 性质 批判 委员会 意见 成绩 官僚主义 队伍 人口 偏差 草案 宗派主义 个别 科学事业 立场 规划 民主党派 制订 改革 工农业 阶级 选举 否定 说明 提倡 留学生 毕业生 殖民主义 剥削 造成 态度 只能 变为 成果 业务 基本上 学徒 派遣 实践 争取 控制 批评 表示 运输 鼓掌 跃进 服务 相结合 战线 统一 全世界 阵营 结合 制造业 劳动力 共产主义 方法 威胁 出现 叛乱 人们 总路线 定期 公社 非洲 发动 维护 愿意 军事 自治区 利益 岸信 武装 祖国 失败 西藏地方 帝国主义者 安排 自治 讨论 时间 挑拨 证明 复活 知道 作为 受到 纲要 食堂 提前 消灭 机械化 危害 防治 举办 社办 效益 做到 坚持 养猪 农具 改良 公布 病虫害 社员 扑灭 办好 大会 棉田 群众性 过渡 八字宪法 麻雀 种子 全体 纲领 大办 保持 耕地 灌溉 科学试验 动员 充分发挥 分配制度 精耕细作 农作物 程度 负担 事情 家庭 臭虫 修改 血吸虫病 同志 施肥 修好 养鹅 水稻 养鸭 灭病 养鸡 号召 节约用粮 牲畜 工具 广东省 佛山市 指出 加快 渔业生产 掀起 合一 内容 托儿所 化肥厂 穷队 普及 地块 水土 总产量 土壤 创造 普查 制定 小学 识字 耕作 种得 树冠 兴办 鼠疫 分析 水灾 山区 作风 善于 范围 治疗 反动派 修正主义 认识 马克思列宁主义 毛主席 精神 反帝 支援 复辟 核武器 印度 意义 拉丁美洲 处理 革命化 品种 外国 成就 符合 称号 燃料 具有 阴谋 深入 相信 西藏自治区 走狗 亚非 大寨 增强 主任委员 观点 为首 进攻 民族团结 反动 食糖 筹委会 总结 有所 爱国 防止 总理 锡兰 推行 自然界 举行 有着 民族主义 刚果 报告 提供 不会 路线 马克思主义 被压迫 边界 批林批孔 专政 武装冲突 争议地区 领域 争夺 武力 接触 理论 老干部 正确处理 中苏 脱离 争论 双方 有利于 包含 选拔 粉碎 两国 设想 倾向 妇女干部 军队 文艺 广积粮 反霸 颠覆 认真执行 广大干部 方向 谅解 拒绝 签订 继续执行 断言 有力 国际形势 回答 埋葬 推动 试验 爱国人士 称霸 战备 奴隶 柬埔寨 美苏 背弃 直至 越南 挑起 角落 打击 玩弄 打仗 教条主义 领导岗位 优秀分子 担负 人类 光荣任务 保卫祖国 外交 光荣传统 谈判 为主 备战 民主集中制 欧洲 工农兵 打倒 主力军 洋奴哲学 空洞 动荡 内债 歼灭 敢于 强国 教导 搞好 基地 大力 敌人 指示 社队 抓好 加速 妄图 战胜 重视 两国人民 中心 高速度 保护 树立 居住 召开 发扬 做好 苏美 污蔑 霸权主义 无政府主义 事业单位 秩序 负责 引进 法制 纪律 当局 生产力 管理体制 安定团结 就业 原材料 资源 农副产品 试行 动力 纠正 允许 义务 现有企业 机械 试点 开发 结构 能源 效果 自主权 竞争 勘探 调查 流通 协作 海域 节能 观念 打破 缝纫机 节约能源 奖金 季节 入学 自销 积累 作出 自行车 进展 购买力 货运量 行业 总量 交通 经济作物 前进 来源 增长速度 能耗 广播 共生矿 毕业 校舍 港口 电视 生产能力 石油 调动 总额 提高质量 棉纱 沼气 煤矿 综合 化工 劳动者 优先 工业锅炉 经济效益 责任制 物价 国民收入 能力 放在 财政收入 方式 出口 下降 手段 信贷 关心 不得 经济体制 违反 建设项目 煤田 不合理 全局 女婴 严格控制 依法 确定 体制 应用 城乡 出版 形势 抓紧 鼓励 科技 政法 作品 艺术 国防 前提 消除 体育 上交 职业 个人 财力 对立 成本 承包 主张 香港 五项原则 公司 赞成 审批 科研 包干 裁军 社会制度 招标 承担 交流 建筑业 供销社 利改税 经济特区 监督 工期 遵循 地位 相应 厂长 磋商 投标 地步 贸易中心 购销 消费 工资制度 基金 补贴 消费基金 搞活 货币 工资总额 基数 考虑 出发 追求 增多 核定 决不能 消费者 部署 盲目 产业结构 价格体系 协调 城镇 宏观经济 献计 建材 持续增长 幅度 增加收入 商品经济 调节 进入 专业银行 前景 劳动生产率 因素 购买 乱提 金融 决策 联产承包 放开 长远利益 完善 运用 进口 贸易 外汇 投资规模 转变 系统 体系 引导 出口创汇 转向 战略 里程 行为 活力 局面 劳务 共培养 自由化 开放 思潮 推进 特色 增产节约 增收节支 探索 不变 横向 纳入 差额 轨道 相适应 经营机制 产品质量 目标 实施 形成 看到 外贸 理顺 职能 基层 环境 经营责任制 素质 压缩 需求 治理 制止 储蓄 对话 协商 责任 总需求 教育经费 消耗 审计 供给 宏观调控 优化 贷款 动乱 暴乱 市场调节 销售 住房 案件 产业政策 目的 传统 在于 计划经济 新增 回升 农产品 全民 电子 调整结构 家用 回落 进出口 专业 大体 运行 充分利用 投产 强化 高技术 油田 积压 城乡居民 丰收 人权 开拓 机制 欢迎 步伐 澳门 吸收 集中力量 高新技术 转换 民主监督 贯彻 实力 面向 根本利益 海外侨胞 法规 民族区域 继续加强 社会保障 基础设施 精简 社会化 国有企业 接近 市场经济 进程 设置 特点 达成 国民 国有资产 相当于 避免 政策性 突出 优势 改革方案 减轻 低价 乡镇企业 国债 外资 合法权益 原因 开发区 禁止 财税 增进 保险 市场需求 乱收费 偷税 办学 主体 格局 经济社会 规范 振兴 总体 注重 差距 民主法制 效率 力度 区域 期待 腐败分子 扶贫 公民 调控 分裂 产业 兼并 破产 债务 改组 成立 资本金 查处 征管 负责制 加大 签署 行使主权 分流 树正气 国有经济 压力 资产 宣传 股份合作制 金融危机 防范 长江 停止 金融风险 财政赤字 下岗职工 澳门特别行政区 犯罪 债券 确保 居民 人民币 严禁 关键 产业化 创新 污染 财政政策 金融机构 采伐 趋势 收储 失业 脱困 违法 势头 城镇居民 违纪 手软 发放 旅游 战略性 袭击 台湾同胞 服务业 升级 着力 信息 积极探索 培育 农民收入 自主 节水 宗教 战略目标 监管 竞争力 参与 重组 违规 信息化 足额 农村税费 转移 规则 带动 生态 把握 环境保护 设施 科研机构 公共卫生 疫情 农民工 非公有制 执法 拖欠 医疗卫生 股份制 应对 医疗 补助 统筹 程序 工作者 预防 履行 农业税 预期 专项 经济运行 阶段 进城 务工 支付 事件 遏制 资本 创新能力 救助 知识产权 扶持 服务体系 生产总值 相关 用地 政策措施 减排 过剩 产能 高于 装备 保护环境 实践经验 集约 增幅 同胞 优化结构 民生 免费 排放 依法行政 养老保险 公共服务 覆盖 来自 出台 两岸关系 增速 灾区 拓展 转型 参保 挑战 创业 发布 气候变化 启动 风险 融资 公益性 药物 有序 提升 保障性 结构性 城镇化 低收入 分开 监测 构建 融合 营业税 方案 大病 增值税 安居工程 互联网 货币政策 公平 累计 补偿 框架 权益 退休 权力 居民消费 领导人 贫困地区 区间 地震 法治 淘汰 协同 支撑 利率 事项 设立 核心 民间 深度 海洋 定向 示范区 下放 取消 核准 修订 化解 打造 突破 管理制度 大国 下行 动能 市场化 绿色 脱贫 小康社会 行动 高校 空间
In [42]:
from collections import defaultdict

data = defaultdict(dict)
years = [int(i[:4]) for i in reports]
for i in wordset:
    for year in years:
        data[i][year] = 0
In [43]:
for txt in reports:
    year = int(txt[:4])
    top1000= jieba.analyse.textrank(txt, topK=1000, withWeight=True)
    for ww in top1000:
        word, weight = ww
        if word in wordset:
            data[word][year]+= weight
In [44]:
word_weight = []
for i in data:
    word_weight.append([i, np.sum(data[i].values())])
In [45]:
word_weight.sort(key= lambda x:x[1], reverse = True )
top50 = [i[0] for i in word_weight[:50]]
In [46]:
print ' '.join(top50) 
发展 建设 经济 加强 企业 工作 改革 国家 人民 继续 社会主义 提高 社会 生产 农业 政府 制度 增加 推进 问题 促进 增长 方面 农村 管理 加快 进行 重点 坚持 全国 教育 投资 市场 工业 地区 完善 计划 实行 支持 政策 生活 中国 文化 扩大 实现 基本 改善 建立 技术 群众
In [47]:
def plotEvolution(word, color, linestyle, marker):
    cx = data[word]
    plt.plot(cx.keys(), cx.values(), color = color, 
             linestyle=linestyle, marker=marker, label= word)
    plt.legend(loc=2,fontsize=8)
    plt.ylabel(u'词语重要性')
In [48]:
plotEvolution(u'民主', 'g', '-', '>')
plotEvolution(u'法制', 'b', '-', 's')
In [49]:
plotEvolution(u'动能', 'b', '-', 's')
plotEvolution(u'互联网', 'g', '-', '>')
In [50]:
plotEvolution(u'工业', 'y', '-', '<')
plotEvolution(u'农业', 'r', '-', 'o')
plotEvolution(u'制造业', 'b', '-', 's')
plotEvolution(u'服务业', 'g', '-', '>')
In [51]:
plotEvolution(u'教育', 'r', '-', 'o')
plotEvolution(u'社会保障', 'b', '-', 's')
plotEvolution(u'医疗', 'g', '-', '>')
In [52]:
plotEvolution(u'环境', 'b', '-', 's')
plotEvolution(u'住房', 'purple', '-', 'o')
In [53]:
plotEvolution(u'发展', 'y', '-', '<')
plotEvolution(u'经济', 'r', '-', 'o')
plotEvolution(u'改革', 'b', '-', 's')
plotEvolution(u'创新', 'g', '-', '>')
In [54]:
plotEvolution(u'社会主义', 'r', '-', 'o')
plotEvolution(u'马克思主义', 'b', '-', 's')
In [ ]: