目录

  • 1数据说明
    • 1.1 数据说明
    • 1.2 数据来源
  • 2描述性统计
    • 2.1月评论数量
    • 2.2 星期评论数量
    • 2.3 24小时时间段评论数量
    • 2.4 性别与时间段评论数量
    • 2.5 用户发表评论数/被点赞数
    • 2.6 评论词云图
    • 2.7 每集弹幕数量
    • 2.8 RM成员词频统计
    • 2.9 成员关系矩阵
  • 3情感分析
    • 3.1 评论情感分析
    • 3.2 弹幕情感分析
    • 3.3 RM成员情感得分
    • 3.4 RM成员情感词词云

1数据说明

1.1 数据说明

本次实验用到的数据是《Running Man》视频的评论数据和弹幕数据。
(1)评论数据格式:
mid-uname-sex-ctime-rtime-review-like-rcount-date-time-week-score
用户id-用户名-性别-评论时间戳-转化后的时间-评论内容-点赞数-回复数-评论日期-评论时间点-评论星期-评论情感得分


(2)弹幕数据格式:
second-ctime-rtime-danmu
弹幕发在视频的第几秒-弹幕时间戳-转化后的时间-弹幕内容

1.2 数据来源

本次实验所有数据均从bilibili爬取和处理得到。(b站的评论和弹幕数据比较容易爬取,这个也是网上搜到的思路)
(1)来源
评论数据来源于以下三个视频(17、18、19年RM节目的评论)
https://www.bilibili.com/video/av12551207
https://www.bilibili.com/video/av18089528
https://www.bilibili.com/video/av40112794

弹幕数据来源于以下视频(10、11、12、17、18、19年RM节目合集,弹幕数据不用上述三个视频的弹幕原因是上述所有视频每一集弹幕数都是最大8000,不能通过弹幕数来比较每集节目)https://www.bilibili.com/video/av38441196


(2)获取方法

①评论获取 :16040条(2019/6/10获得)
url= ‘https://api.bilibili.com/x/v2/reply?type=1&oid=18089528&pn=’ + str(i) + ‘&sort=0’ 关键是获取视频的oid,其实就是每个视频合集的av号,在上述1.2(1)来源中可见。可以爬取出用户id-用户名-评论时间戳-评论内容-点赞数-回复数

②弹幕获取:252个视频弹幕,共457020条(2019/6/16获得)
url= ‘https://comment.bilibili.com/’ + cid + '.xml’可以爬取出弹幕出现在视频第几秒-弹幕内容。关键是获取视频合集中每个视频的cid。

cid在合集页面源代码中,在爬取弹幕的视频合集中共252集(截止到2019/6/20)

2描述性统计

2.1月评论数量


数据从2017年7月到2019年6月(6/16),可以看出2018年的各个月份评论数数是3年中最高的一年。另外每年的8月、1月都是本年度最多评论的两个月,其中2018年8月和2019年1月评论数高达1346和1357,推测是因为寒暑假和年假,导致观看学生或上班族人数增多。当前是6月下旬,所以推测接下来的7、8月份观看人数会出现增多趋势。

2.2 星期评论数量


图中明显可以看出,一周中评论数最多的三天依次是周一、周二、周日。这是因为RM在韩国周日下午更新,在国内是周一更新,所以周一、周二的评论数是最多的。我本来认为做多的三天应该是周五、周六、周日,实际不符,所以我推测bilibili上RM的观众大部分是大学生和上班族这些年轻人,因为他们有时间能够及时追剧,而不用刻意等到周末。

2.3 24小时时间段评论数量


在一天24小时中,评论数在1:00—7:00持续减少,而大多集中在11:00-14:00和19:00—1:00。显然大家观看的时间段集中在中午和晚上,最高一小时段中评论数超过1000。不过可能是年轻人的原因,很多评论都比较晚在22:00-1:00,还有少部分发生在凌晨。

2.4 性别与时间段评论数量



看整体发评论的用户性别,男女基本持平(女生稍多),大部分用户还是选择保密。但是从性别和24小时时间段来看,有一个有趣的现象:虽然凌晨发评论人数少,但是男生在0:00-7:00一直多于女生,说明熬夜人数中男生绝对多于女生。另外最突出的是女生在20:00—21:00的评论数,多达410,远远超过其它时间段(其它时间段都低于200)。

2.5 用户发表评论数/被点赞数


几乎所有的用户发评论不会超过20条,这里选出15个发评论最多的用户。其中最多发评论的有114条,其次是49条,足以可见他们是RM的真爱粉。

几乎所有的用户评论累计点赞不会超过300,这里选出20个评论累计点赞最多的用户。其中最多的是7664,这是因为“一只南音呀”是RM视频合集的上传者(UP主),他的评论会被置顶,观众出于感谢会为其点赞;其次是6483、5514,这是他们用心评论的原因。

2.6 评论词云图


由评论生成的词云来看,有意义的词中,“rm”、“弹幕”很明显,因此本次实验中也会注重对弹幕的分析。至于RM成员的名字,明显看出的有光洙、大神、全妹等,下面我也针对RM成员做了词频统计。

2.7 每集弹幕数量


252集节目中,弹幕平均1813条,最多8000条(bilibili限制),最少250条。从图中也可以看出,超过4000弹幕的节目很少,但是最新部分的节目弹幕整体很多,而之前的节目弹幕整体很少。推测观众更倾向于最新的节目,至于第一集节目为什么弹幕也很多,是因为许多人看到合集视频会从第一集看,并发弹幕表示对UP主的感谢,但是由于252集合集中想看最新的节目人数增多,同时从第1集坚持往下看的人数骤减,导致了这种情况。

2.8 RM成员词频统计


利用jieba加载自定义词典(RM每个成员的名字、外号),计算词频。可以看出评论中提到最多的成员是宋智孝、李光洙、全昭旻,都超过了1000次,其中:①宋智孝以懵智、ACE、幸运女神这样的定位也非常成功,之前和Gary(原成员)的“周一情侣”,现在和金钟国的爱情线总是被人提及;
②李光洙是搞笑担当,被称为“综艺之神眷顾的男人”,节目中总是倒霉、臭手的形象;
③新成员全昭旻表现总是刻意出格而被冠上“全疯子”的外号,观众也经常因为其可爱、谈及她;
④与我设想不同,刘在石的提到次数并不是第一,因为刘在石是RM的灵魂人物;⑤评论中提及次数最少的是梁世灿,只有300多次,同样是新加入成员,梁世灿和全昭旻却是两个极端,全昭旻过于展现自己被粉丝接受或被批评,而梁世灿一直定位不明确,镜头很少,争议也很少。

2.9 成员关系矩阵



(X,Y)的值代表了X到Y的关联度,即X、Y同时出现占X的比例。图中可以看出三个比较突出的关系:宋智孝→金钟国、李光洙→池石镇、李光洙→HAHA。
①宋智孝和金钟国的爱情线吸引了许多CP粉,宋智孝→金钟国这条关系最强,达0.39,说明评论提到宋智孝时,39%的概率会提到金钟国;
②李光洙和池石镇、HAHA的关系比较强烈,因为三人组成了“背叛者联盟”

3情感分析

其实这次作业的重点是要自己代码实现情感分析(并不是使用第三方情感得分库)

3.1 评论情感分析


在16040条评论中,平均情感得分2.79,最低得分-60.36,最高得分152.47,说明还是喜爱RM的观众居多,另外也存在两个极端:特别喜爱和特别讨厌RM的观众。

选取大多数评论情感得分所在的区间【-20,20】,以2为间隔做出直方图。可以看出情感得分大致关于【0-2】这一范围呈钟型对称分布,而且这一范围评论数最多,超过4000条。其次是【-2,0】和【2,4】范围,评论均超过2500条。整体上可以说绝大部分的评论情感得分落在【-4,6】区间内。

按照月份做出平均情感得分图,可以看出,2017年的评论情感得分都很高,基本都保持在平均水平之上;而2018年的评论情感得分整体很低,基本低于平均分;而在2018年11月至今,情感得分明显有上升的趋势,说明今年以来的RM节目还是很受观众欢迎的。

3.2 弹幕情感分析


252集节目的弹幕情感得分平均得分1.51,最低0.51,最高2.87分,看来每集RM节目整体都受观众喜爱,但是喜爱程度还是有很大不同的。

选取弹幕数量大于2000的情感得分排名靠前的15集RM节目作为推荐

基于弹幕数量和弹幕情感,也可以分析了每一集节目随着时间线的变化情况,这里以E440.190224.伟大的钱争比赛(无嘉宾)这一期节目为例:


从第一张图可以看出E440这一期整体的每分钟弹幕数和每分钟的弹幕情感得分;从第一张图中选取弹幕数量突增的时间段【40,60】,得到图二,可以看出当弹幕数量达到一段区域内的最大值时,弹幕情感得分也基本是小范围内的最高分,E440这期节目中选取四个片段42、48、51、56分钟,可以认为这四个视频片段是本期节目中最精彩的部分。由于只做了E440作为演示,对于其他集数不一定适用,但是但从弹幕数量来看,每集节目中弹幕数量骤增至顶峰的点必定是精彩片段。所以可以根据弹幕数量来识别精彩视频片段。(其实想搞个推荐的,但是发现没搞出来,尴尬。。)

3.3 RM成员情感得分

处理过程:
(1)所有评论分词,保留含有成员名字的句子分词列表
(2)找到成员名字位置,先向右再向左depth(本次实验我设置为2)范围内查找情感词,基础权重是1,如果找到了否定词或程度词,更新权重;如果找到了情感词,情感词得分×权重即为本次情感得分
(3)遍历所有评论,计算每个成员的情感得分总值和次数,计算平均值

处理过程我感觉是正确的,但是得到的结果我认为是错误的。首先结果显示情感得分最高的是全昭旻和梁世灿,都大于0.4分,但是两位都是17年加入的新成员,受到粉丝排斥和不公平辱骂是最多的,显然结果是不合理的。其次刘在石作为灵魂人物,评分应该不低,但结果显示为中等水平,只有0.19。至于宋智孝的评分应该比较合理,评分应该很高。总之这里的结果我认为不合理,原因可能是情感词典中的情感词评分不适用于RM。

3.4 RM成员情感词词云

在3.5过程中,只要将每个成员对应的情感值保存下来,即可分别做情感词词云。以下分别是刘在石、池石镇、金钟国、HAHA、宋智孝、李光洙、全昭旻、梁世灿。这些特征还是比较符合各个成员的。

刘在石,很明显的“特辑”、“西装”;池石镇,年龄最大的成员,“针对”、“糊里糊涂”、“大叔”、“大哥”这些的确都是很明显的特点词。

金钟国,作为能力者的人设,“欧巴”、“真英”(荧幕情侣之一)、“结婚”也都很符合。

宋智孝,作为女神,“欧尼”、“表白”、“喜欢”、“姐姐”这些也很明显符合;李光洙,“心疼”、“欺负”(最倒霉最惨的)、“恋情”、“公开”(公开恋情后许多人的调侃)也很符合人设。

最后是两位新人,全昭旻情感词是“喜欢”、“可爱”、“青蛙”等;梁世灿则是“新人”、“看不起”等等。

  • 节选自上学期的某课程作业(2019/6/20),瑕疵很多,做的很粗糙(懒得改了)
  • 参考了https://blog.csdn.net/csdnnews/article/details/84312510文章的思路(不过我的课程作业代码全是自己搞的哦)

《RunningMan》评论及弹幕情感分析相关推荐

  1. 利用python分析电商_基于Word2Vec+SVM对电商的评论数据进行情感分析

    Word2Vec-sentiment 基于Word2Vec+SVM对电商的评论数据进行情感分析 首先是利用word2vec对正负评论数据进行词向量训练,然后利用SVM分类器对语料进行分类,具体的过程如 ...

  2. 基于微博评论的文本情感分析与关键词提取的实战案例~

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 宣室求贤访逐臣,贾生才调更无伦. ...

  3. 基于IMDB评论数据集的情感分析

    文章目录 前言 一.大型电影评论数据集介绍 二.环境配置 三.实验模型及流程 1.实验模型 2.实验流程 四.实验代码 1.多层感知器模型代码 2.递归神经网络模型代码 3.长短期记忆模型代码 五.实 ...

  4. 基于深度学习的汽车行业评论文本的情感分析

    使用卷积神经网络对汽车行业评论文本进行情感分析. dateset 爬取汽车之家车主口碑评论文本,抽取口碑中最满意以及最不满意评论文本,分别作为正向情感语料库和负向情感语料库. 爬虫技术视频链接:htt ...

  5. 利用Python实现酒店评论的中文情感分析,含数据集

    利用Python实现酒店评论的情感分析 完整代码下载地址:利用Python实现酒店评论的中文情感分析 情感极性分析,即情感分类,对带有主观情感色彩的文本进行分析.归纳.情感极性分析主要有两种分类方法: ...

  6. snownlp对天猫商品评论数据进行情感分析(附源码)

    snowNLP介绍 SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中 ...

  7. 利用python爬取东方财富网股吧评论并进行情感分析(一)

    利用python爬取东方财富网股吧评论(一) python-东方财富网贴吧文本数据爬取 分享一下写论文时爬数据用到的代码,有什么问题或者改善的建议的话小伙伴们一起评论区讨论.涉及内容在前人的研究基础之 ...

  8. 豆瓣电影评论爬取+情感分析+词云

    基于b站up主的视频 https://www.bilibili.com/video/BV18C4y1H7mr?t=1444 进行了优化 整合到一个main.py文件中函数式运行 自动化数据清洗 提供了 ...

  9. 如何科学地蹭热点:用python爬虫获取热门微博评论并进行情感分析

    前言:本文主要涉及知识点包括新浪微博爬虫.python对数据库的简单读写.简单的列表数据去重.简单的自然语言处理(snowNLP模块.机器学习).适合有一定编程基础,并对python有所了解的盆友阅读 ...

  10. 电影评论 R文本挖掘-情感分析

    数据集说明:本次情感分析使用电影评论数据1500条,包含好评.中评.差评各500条: [1]数据读取: [2]数据清洗: [3]评论分词: [4]数据整理(方便情感打分): [5]词典读取: [6]定 ...

最新文章

  1. Unity3d载入外部图片文件
  2. 计算机科学家证明,为什么更大的神经网络可以做得更好
  3. access手工注入笔记
  4. jmeter压测过程中内存溢出
  5. 云计算与 OpenStack - 每天5分钟玩转 OpenStack(14)
  6. java绑定click时间_JAVA面试之vue.js(一)
  7. 【LeetCode】剑指 Offer 58 - I. 翻转单词顺序
  8. TokenInsight:BTC现货交易量环比上周大幅上升,人气指数小幅回落
  9. 想要获得别人尊重,你必须得自己先牛逼起来
  10. Oracle认证/维保技术支持服务找重庆思庄
  11. Python Tornado web框架简单例子
  12. Linux c语言 creat参数,C语言open和creat函数
  13. “野火FreeRTOS教程”第9章知识点总结-空闲任务与阻塞延时
  14. web前端软件VS-Code-的下载和安装
  15. QC4+充电协议_坚果R1原装QC4+充电器评测:兼容USB PD3.0/PPS/QC3.0
  16. mac中delete键的5种用法
  17. Transform.rotation所见非所得
  18. mysql 命令行操作
  19. Guessing the Greatest (hard version)-(交互+二分+思维)
  20. 文本摘要生成评价指标——rouge

热门文章

  1. 通过两点求圆心的公式
  2. CC2530之OLED12864程序详解
  3. 微软独特的数字化转型思想和方法论
  4. 《疯狂的站长》读后感3
  5. 百度的实时搜索架构分析
  6. Google桌面搜索和百度硬盘搜索索引停滞的原因
  7. PowerBuilder制作纸牌游戏
  8. Unity实现鼠标点击指定位置导航角色
  9. python如何运行js代码
  10. extjs引入html,ExtJs教程第一集 搭建ext环境后的第一个hello World