前言
请先阅读
“中国年轻人正带领国家走向危机”,这锅背是不背?
一文,以对“手把手教你完成一个数据科学小项目”系列有个全局性的了解。
本系列代码统一开源在GitHub:DesertsX/gulius-projects ,感兴趣的朋友可以先行 star 哈。
本文将对评论里的
emoji 进行提取,并绘制分布图谱。
读取数据
本次主要关注评论列,所以仅读取下面几列数据,忽略其他列。
提取 emoji
将提取后的列的全部元素转换成列表。
文章所限,仅显示部分输出:
合并嵌套列表为单一列表,之前文章和代码里已经用过很多次喽。
统计出emoji共76种:
emoji 分组统计
统计结果,看看大家都喜欢发什么表情:
emoji 使用情况
为方便展示,选出top20:
这回的 emoji 没找到对应表情图,所以无法像当你点开这首《八月》的歌:9400余条评论的分析与挖掘里显示,不过从上一个项目了解如何实现也是一样的:
评论数据
拿出评论数据,方便之后绘制emoji分布图谱。
显示部分数据:
将列表合并成一个字符串
字符串长度为83252。
jieba 分词
在GitHub/jieba分词前,先把上面的里的去掉中括号后的一个个都添加进自定义的词典,以免分词时被切分开。
此处需注意,如果不去掉中括号,直接将整个添加进词典的话,后续分词时,括号还是会被分开,可能相应的需要修改jieba源码才行(jieba分词与词性标注自定义词典支持特殊字符),但尝试后无果,于是还是采取现在的方案。
jieba/test/test_userdict.py
或者在的存好,然后读入
展示部分分词结果:
去掉括号后的:
NLTK 分布图谱
分布图谱在《当你点开这首《八月》的歌:9400余条评论的分析与挖掘》项目时,就想实现,可惜一直没成功,notebook里保留了尝试的代码,且整个代码太杂乱,需如本系列一样后续拆分开和润色。
也是因缘际会,想本系列项目结束后,下一个系列就来玩玩热门电视剧、热门电影,也罗列了许多切入点,感觉要是能搞出来,还是不错的。这回也先绘制了于正的热门清宫剧《延禧攻略》里的一些主要人物在小说文本中的分布图谱。
扯远了,因为上述尝试成功后,这回也用到emoji的分布上来。虽然评论数据是拼接到一起,因而分布图谱的可解释性一般,权当尝个鲜、玩玩新花样。
上面是top15的分布图谱,结合pyecharts的柱形图一起看,风味尤佳:
而全部emoji的分布图谱,纵坐标太密集,但整张图有种说不出的美感,逃……
你听说过安利吗?
本系列代码统一开源在GitHub:DesertsX/gulius-projects ,感兴趣的朋友可以先行 star 哈。
https://github.com/DesertsX/gulius-projects
欢迎关注“牛衣古柳”哈!
请备注“公众号”,以免误伤
领取专属 10元无门槛券
私享最新 技术干货