《哪吒》票房破25亿,我用AI分析了它20W+评论数据

640?wx_fmt=jpeg

说起这个暑期档的动画片,非《哪吒之魔童降世》莫属了!

上映第 1 天:89分钟,中国动画最快破 1亿纪录。

上映第 2 天:中国影史首部单日票房破 2亿的动画电影。

上映第 4 天:中国影史第66部破 10亿影片!

上映第 8 天:正式登顶!破 16亿,超过《疯狂动物城》,创中国影史动画电影票房新纪录!

上映第 9 天:成为中国影史第 17 部破 20亿 影片!

上映第 10 天:破 23亿!连续10天单日票房过亿,连续10天获得单日票房冠军!

我是粥左罗,公众号:粥左罗

不仅仅是票房,《哪吒》在豆瓣上的评分也到了 8.6 分以上(《大圣归来》的豆瓣评分是 8.3 分),众多影迷观看后给出的评价也非常直观,就是好看二字。

那么,这部动画,到底大家对其评价如何?

大量票房背后的数据里又隐藏了哪些东西?

本文抓取了猫眼 20W+ 的短评,并进行了简单的数据分析,带大家一起看下,观众的真实想法。

一、电影总体评价如何?

640?wx_fmt=png
《哪吒》各评分数量

猫眼电影的评分为 0-10 分,从上图可以看到,有 97.3% 的观众给出了 8 分以上的高分,给出满分 10 分的更是达到了 85%。

只有极小一部分观众(1%)打了 4 分以下的低分。

总体来说,观众还是很喜欢这部电影的,票房好的同时,口碑也好,名利双收!

二、总体评价的时间走向如何?

下面来分析一下自首映以来的每天的评分变化趋势

640?wx_fmt=png
评分走势图

从图中可以看出,从首映开始,评分就一直居高不下,而且没有下滑的趋势,始终在 9.5 以上,这几天的总体平均分维持在 9.63 分,说明大家对该片的肯定。

至于后续大家对其的评价如何,是否会出现滑铁卢?还需要时间来检验。

三、该片的观众分布

地理位置分布

640?wx_fmt=png
观众地理分布

从上图可以看出,《哪吒》的观影人群主要集中在沿海一带,这些地方经济相对发达,城市人口基数庞大,极多的荧幕数量和座位、极高密度的排片场次,让观众便捷观影,活跃的观众评论也多,自然也就成为票房的主要贡献者。

其实这条线和胡焕庸线是非常契合的

640?wx_fmt=png
胡焕庸线

这条 1935 首次提出的概念,到今天依然符合国情。

640?wx_fmt=png
观众来源排行TOP20

观众来源排名前 20 的城市依次为:北京、深圳、广州、成都、上海、重庆、东莞、长沙、武汉、西安、天津、郑州、南京、佛山、杭州、昆明、沈阳、长春、青岛、大连。

电影消费是城市文化消费的一部分,从某种角度来看,可以反映出一个城市的购买力

当然,这里没有考虑城市的总人数,存在一定的不严谨。

性别分布

640?wx_fmt=png
观众性别分布图

从上图可以看出,猫眼上的观众大多没有公开自己的性别信息,也有可能是注册时默认就是未知性别。

男女相比的话,也没有很大的区分,二者相差并不多,男生稍稍多于女生。

总之,《哪吒》是一部男女皆宜的片子。

四、AI 分析评论的情感倾向

该片的评分甚高,但是评论透露出观众的情感到底是怎样的呢?

下面我调用了腾讯 AI 开放平台的情感倾向分析接口,得出了每条评论的情感倾向值,及其分布情况。

情感分析接口能够对带有情感色彩的主观性文本进行分析、处理、归纳和推理,识别出用户的情感倾向,是积极还是消极,并且提供各自概率。

腾讯AI接口介绍

接口返回中,有两个有用的信息。

一个是正向情感指数,该值越大,代表文本的情感倾向越积极,否则越消极。

另外,接口会直接给出文本的情感分级结果,有负向、正向两种。

先来看一下分级结果统计:

640?wx_fmt=png
情感分析结果分布图

感觉腾讯 AI 接口的评论分析统计结果,有 84% 的观众的评论是正向的。

当然,这里腾讯的分析结果和普通人的理解还是有点差距的。

比如,以下评论都被腾讯接口归到了负向情感中。

笑点居多!准备二刷 

我夸爆!!!

别的不想说!!!都给我看!!!!

看哭了,看哭了

猫眼评论

下面再来看一下情感值的分布情况:

640?wx_fmt=png
正向情感分布
640?wx_fmt=png
负向情感分布

从评论内容分析结果来看,正向情感指数的观众是远高于负向的,这也有观众的评分情况契合。

640?wx_fmt=png
评论情感指数走势图

从评论情感指数走势图可以看出,情感指数一直在 0.77 上下徘徊,也算是一直处于正向情感中了。

五、为什么那么多高分?

绝大部分观众都对这部电影打出了高分,那么大家是因为什么喜欢这部电影的呢?

为此我整理出打了 8 分以上的观众评论,并制作了评论词云图,字体越大,说明这个词在评论中被提及得越多。

640?wx_fmt=png
高分评论词云

1、大大的好看二字,说明大家都觉得这部电影真的很不错,超级非常好看!

2、另外,剧情、特效、搞笑、画面、情节、感动等字眼,也说明了该片得到大家的认可之处;

3、国产、崛起等字眼,也说明了该片在国产片中算是一匹黑马,并且其票房已经登上国产动画电影票房第一的宝座。

打低分的观众都说了些什么?

640?wx_fmt=png
低分评论词云

1、大大的好看二字说明有些观众打分的随意性,但是评论还是真实的。

2、垃圾、不好、难看等字眼,也说明了确实有一部分观众不喜欢该片;

总结

总得来说,《哪吒》在猫眼的认可度还是很高的,从其评分、评论都可见一斑。

虽然存在一些评价不高的情况,但是瑕不掩瑜,从来就没有让每个人都满意的东西。

所以,大家可以去支持一波《哪吒》,当然,也希望国产电影可以涌现出更多类似哪吒的电影,这样才有希望。

参考:

  • https://dwz.cn/EjQAuNx7

  • https://dwz.cn/ELafTJ3z

  • https://dwz.cn/pqsCNS39

  • https://dwz.cn/pwCqoKBw

1、原创不易,如果你喜欢我们的内容,请关注点赞分享转发支持我们,你们的认可是我们的动力;

2、微信后台回复“哪吒”,即可获取分享在Github的爬虫以及数据分析代码链接;

3、欢迎任何形式的合作、转载,合作请微信后台留言咨询;

---

哪吒你看了吗?感觉怎样?

欢迎留言


-END-

 热 文 推 荐 

☞ 

☞ 

☞ 

☞ 变老、变脸、变性,这款变脸APP简直无所不能!

☞ 

↓↓↓ 不止技术 ↓↓↓

640? 

### 数据分析流程概述 要使用 Python 进行哪吒电影评论数据分析,可以按照以下方法实现完整的数据采集、清洗、分析和可视化的流程。 #### 1. **数据采集** 可以通过网络爬虫获取目标平台上的评论数据。例如,豆瓣或猫眼等平台上都有大量关于《哪吒》系列电影的用户评论。以下是具体操作: - 使用 `requests` 或 `selenium` 库来模拟浏览器行为并抓取网页内容。 - 如果遇到反爬机制(如登录验证),则需通过会话管理保存 Cookie 并持续访问接口[^3]。 ```python import requests from bs4 import BeautifulSoup headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)' } url = "https://movie.douban.com/subject/{movie_id}/comments" response = requests.get(url, headers=headers) soup = BeautifulSoup(response.text, 'html.parser') comments = soup.find_all('span', class_='short') # 获取短评列表 for comment in comments: print(comment.text.strip()) ``` #### 2. **数据预处理** 收集到原始评论后,需要对其进行清理以便进一步分析。常见的预处理步骤包括去除噪声、分词、去停用词等。 - 利用正则表达式删除无关字符。 - 借助第三方库(如 jieba)完成中文分词任务。 ```python import re import jieba def preprocess(text): text = re.sub(r'[^\w\s]', '', text) # 移除非字母数字字符 words = jieba.lcut(text) stopwords = set(open('stopwords.txt').read().splitlines()) # 加载自定义停止词表 filtered_words = [word for word in words if word not in stopwords and len(word) > 1] return ' '.join(filtered_words) cleaned_comments = [preprocess(c.text.strip()) for c in comments] print(cleaned_comments[:5]) ``` #### 3. **数据分析** 采用多种统计学和技术手段探索隐藏模式与趋势。 ##### (1)**词频统计** 计算高频词汇及其频率分布情况,了解观众关注焦点所在。 ```python from collections import Counter all_words = [] for cc in cleaned_comments: all_words.extend(cc.split()) counter = Counter(all_words) most_common = counter.most_common(10) print(most_common) ``` ##### (2)**情感分析** 评估每条评论的情感极性,判断整体舆论氛围偏向正面还是负面。 ```python from snownlp import SnowNLP sentiments = [] for cc in cleaned_comments: s = SnowNLP(cc) sentiments.append(s.sentiments) average_sentiment = sum(sentiments)/len(sentiments) print(f'Average Sentiment Score: {average_sentiment}') ``` ##### (3)**主题建模** 利用 LDA 方法识别潜在话题领域,揭示不同维度下的讨论热点。 ```python from sklearn.feature_extraction.text import CountVectorizer from sklearn.decomposition import LatentDirichletAllocation as LDA vectorizer = CountVectorizer(max_df=0.95, min_df=2, stop_words='english') X = vectorizer.fit_transform(cleaned_comments) lda_model = LDA(n_components=5, random_state=42) lda_topics = lda_model.fit_transform(X) feature_names = vectorizer.get_feature_names_out() top_n_keywords = 10 topic_keywords = [] for topic_idx, topic in enumerate(lda_model.components_): top_features_ind = topic.argsort()[:-top_n_keywords - 1:-1] keywords = [feature_names[i] for i in top_features_ind] topic_keywords.append(keywords) for tk in topic_keywords: print(tk) ``` #### 4. **结果可视化** 借助图表直观展示所得结论,便于理解复杂关系。 - 绘制柱状图呈现关键词排名。 - 创建折线图反映情绪随时间波动轨迹。 ```python import matplotlib.pyplot as plt plt.bar([kw[0] for kw in most_common], [kw[1] for kw in most_common]) plt.title('Top Keywords Frequency Distribution') plt.xlabel('Keywords') plt.ylabel('Frequency') plt.show() dates = ['2023-01-01', '2023-01-07'] # 替换实际日期范围 plt.plot(dates, [sum(sentiments[:i]) / i for i in range(1, len(sentiments)+1)]) plt.title('Sentiment Trend Over Time') plt.xlabel('Date') plt.ylabel('Cumulative Average Sentiment') plt.xticks(rotation=45) plt.tight_layout() plt.show() ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值