60行python代码分析2018互联网大事件

2018年是改革开放四十周年,也是互联网发展的重要一年。经历了区块链,人工智能潮的互联网行业逐渐迎来了冬天。这一年里有无数的事件发生着,正好学了python数据处理相关,那么就用python对18年的互联网事件进行一个简单的记录与分析。这里主要用了wordcloud和jieba。

首先来看一个数据表,这份excel表单几乎就是2018全年互联网圈发生的所有事件了。

那么现在想要分析着数万条数据,可以用什么方法呢,我们首先会想到用可视化来呈现,图表展示也许会更清晰,但是这里我们选择用python中简单易用的词云来展示。

废话就不多说了,直接贴代码。

 1 #copyright by pricechen
 2 #几个常用库
 3 import xlrd
 4 import jieba
 5 from wordcloud import WordCloud,ImageColorGenerator
 6 import codecs
 7 import imageio
 8 
 9 #先把文件地址写好,对文件保存地址有需求的同学可以自行设置一下输入input
10 Savepath = 'E:\pricechen\data\'
11 filename = '2018大事件记录.xlsx'
12 month = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12']
13 
14 #对内容进行封装
15 def fileHandle(Savepath,filename,month):
16     #打开excel文件
17     book = xlrd.open_workbook(Savepath+filename)
18     sheet = book.sheet_by_name('Sheet')
19 
20     #处理新闻数据
21     for i in range(0,sheet.nrows):
22         #每一行内容
23         textLine = sheet.row_values(i)
24         # print(textLine)
25         #遍历月份
26         for data in month:
27             if textLine[0][5:7]==data:
28                 #这里进行异常处理
29                 try:
30                     #写入以月份命名的文件夹
31                     with open(Savepath+ data + '.txt', 'a+') as f:
32                         f.write(textLine[1]+' ')
33                 except FileNotFoundError:#文件不存在异常
34                     continue
35                 except UnicodeEncodeError:#编码异常
36                     continue
37 
38 def WCHandle(Savepath,month):
39     #处理词云图片
40     for i in range(0,12):
41         imagePath = Savepath + 'background\' + month[i] + '.jpg'
42         textPath = Savepath + month[i] +'.txt'
43         with codecs.open(textPath) as f:
44             text = f.read()
45             # cut_text = ' '.join(jieba.cut(text))#使用jieba分词得到词语字符串
         #这里原本使用的是jieba分词,但是后面觉得分词之后展现的数据反而没有那么直观 46 cut_text = ' '.join(text.split(',')) #改用了将每一句话展现到词云里面 47 try: #背景图片选择,这里最后因为序号错误需要加一个异常处理,选择第00张图片 48 background = imageio.imread(imagePath) 49 except FileNotFoundError: 50 background = imageio.imread('E:\pricechen\data\background\00.jpg') 51 #设置词云参数 52 cloud = WordCloud(font_path = 53 Savepath+'WenYue-FangTangTi-NC-2.otf', 54 background_color = 'white',mask = background, 55 max_words=2000,max_font_size = 40, 56 scale=10, #清晰度,这里考虑电脑配置,只选择15 57 ) 58 word_cloud = cloud.generate(cut_text) 59 #保存,使用原图保存方式 60 word_cloud.to_file(Savepath+'2018\Chinese'+month[i]+'.jpg') 61
  #这边就是自动化处理了 62 if __name__=='__main__': 63 fileHandle(Savepath,filename,month) 64 WCHandle(Savepath,month)

以上就是所有代码了,一共六十行左右代码,就能处理近六万条数据。

十二个月的数据,每个月都处理为一张词云图,每张词云图都用了一个省的地图作为模板。

来看看处理后的结果,我就直接上图了,因为图片比较大(保存的清晰度较高),这里就只放两张图。

需要2018年互联网大事件数据的可以私信我,代码有错误的话欢迎指正哦。

原文地址:https://www.cnblogs.com/chenprice/p/10206733.html