微博热点关注度对比与可视化

浏览: 1757

最近一个项目用到一个上百万行的微博数据,包括微博文本数据和地理坐标数据,从数据库中把这些数据取出来后做了一些分析,这里选了其中比较有趣的部分记录一下,当做积淀。

因为数据是2013年的(现在2018年去挖2013的数据确实有些“落后”了,但它比较全而且现在微博爬数据越来越困难了),首先要确定2013年有哪些微博热点,这里选了一个比较有代表性的盘点,如下图:

 

用echarts标注一下这10个头条的发生时间,得到下面的可视化效果(青色有涟漪效果的为10大头条发生时间):


这里选了其中4个进行分析,首先关注度方面,选了五个维度:微博量、微博文本平均长度、衰减时间、衰减速率、坐标广度;

这些指标部分通过SQL语句直接算,坐标广度是把坐标取出来后用Python算了最小外包矩形(MBR)。最后得到一个雷达图(经过归一化处理):


可以看到地震是关注度很高的,毕竟四川的地震牵动全国人民的心。

自然语言处理方面,先是用jieba库进行了分词,统计了词频,并且用wordcloud进行词云可视化。

部分Python代码如下:

wlst = jieba.lcut(text) #分词

dictToCsv(wcDict,dictOut) #保存词频表到dictOut文件里
bdimg = np.array(Image.open(markPic))
wordcloudc = WordCloud(
mask=bdimg,
background_color='white',
font_path='C:\Windows\Fonts\simsun.ttc'). \
generate_from_frequencies(wcDict)
wordcloudc.to_file(picOut) # 保存图片为png




从词云图中可以看到一些事件的联系,例如雅安地震讲到了较多的汶川。复旦事件很多文本里谈到了清华朱令案

情感分析用了百度AI的API算了文本的情绪,精度不是很高,之后会尝试其他主要用微博文本进行训练的模型来算情绪。

百度AI算出来的结果统计如下,估计是地震的微博里面有比较多的祈福、坚强等字眼,判为正向情绪的文本比例大。堆叠条形图如下:

image.png

因为这四个事件是灾难或危机事件,负面情绪的比例还是可观的。

推荐 1
本文由 lyndonlcf 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册