破冰行动:敢拍好看。
最近一直在追一部电视剧——破冰行动。
今天晚上大结局,我是看完后,来写这篇文章的...
全剧一共48集,虽说有些地方感觉不是那么的合理(弹幕疯狂吐槽编剧)。
比如「赵嘉良」作为香港大佬,还和扛把子「罗绍洪」是生死之交,居然被「林耀东」一个小小的村主任给暴揍。
还有「李飞」作为一名人民警察,咋天天我行我素的。
这服从命令又从何说起呢?
不过于我而言,这部剧还是不错的,毕竟什么事都没有完美的结局。
就像我天天码字一样,也不例外,总有毛病...
剧中「蔡永强」的金句,堪称经典。
不是每个人都能看见真相,但每个人一定能成为真相。
我讲证据,有证据他就有问题,没有证据他就没有问题。
把脾气拿出来,是本能。
把脾气压下去,是本事。
处理不好,有时候优点,就会变成缺点。
与此同时我也发现了爱奇艺对电视剧进行数据分析的一个网站——爱奇艺指数。
受众观点这里出问题了,没有显示出来(昨天还好好的)。
所以接下来就通过网站上的数据来复现一次。
/ 01 / 播放地域
数据就是从网站上拿的,然后通过pyecharts生成地图。
爬取代码就不放了,也比较简单,给大家展示一下数据就好。
这里感觉数据应该是各地区的播放量。
import pandas as pd
# 读取数据
df = pd.read_csv('map.csv', header=None, names=['name', 'value'], encoding='gbk')
# 地图参数
value = [int(i) for i in df['value']]
attr = [i.replace('省', '').replace('特别行政区', '').replace('自治区', '').replace('回族', '').replace('壮族', '').replace('市', '').replace('维吾尔', '') for i in df['name']]
# 绘制地图
map = Map("破冰行动播放地域分布", title_pos='center', title_top=0)
map.add("", attr, value, maptype="china", is_visualmap=True, visual_text_color="#000", is_map_symbol_show=False, visual_range=[0, 60000000], is_piecewise=True, visual_split_number=5, visual_range_color=['#C5F1D8', '#99E6BB', '#6EDC9E', '#42D1A9', '#16C664'], visual_range_text=['低', '高'])
map.render('破冰行动播放地域分布.html')
生成分布图如下。
这里调整了一下地图颜色,所以和网站的地图看起来就差不多了。
可以发现沿海省份观看的人数相对较多。
/ 02 / 明星看点
明星看点是一张河流图,是面积图的一种形式。
数据是基于智能图像识别技术,自动分析出特定明星出场的片段,反映视频的角色出场比重。
同样,数据来自于网站,爬取不做分析,仅展示数据。
这里发现12集「黄景瑜」没有出场,没有「飞飞」的日子,弹幕应该会很开心。
from pyecharts import ThemeRiver
import pandas as pd
import numpy as np
# 读取数据
df = pd.read_csv('people.csv', header=None, names=['num', 'value', 'name'], encoding='gbk')
# 将DataFrame转为List
data = np.array(df)
result = data.tolist()
# 绘制河流图
tr = ThemeRiver("破冰行动明星看点", title_pos='center', title_top='0', width=800, height=400)
tr.add(['黄景瑜', '吴刚', '王劲松', '任达华', '李墨之', '张晞临', '公磊'], result, is_label_show=False, legend_top='7%')
tr.render("破冰行动明星看点.html")
生成河流图如下。
这里pyecharts没法对集数生成时间序列,所以横坐标看着有点尴尬,实际上就是1到48集。
下面就是最后一集的数据图,「公磊」饰演的「林宗辉」在上一集领盒饭了,所以数据显示为0。
黑色圆圈处,为吴刚老师饰演的「李维民」被省纪委调查。
最后剧情表明那只是一个局而已(不愧是达康书记)~
/ 03 / 人物词云
获取网站上2万多条评论数据,对人物进行词云展示。
就是不知道第一列的数字是什么意思...
from wordcloud import WordCloud
import matplotlib.pyplot as plt
import pandas as pd
import random
import jieba
# 读取数据
df = pd.read_csv('iqiyi.csv', header=None, names=['num', 'comment', 'key', 'emotion', 'type'], encoding='utf-8-sig')
# 设置文本随机颜色
def random_color_func(word=None, font_size=None, position=None, orientation=None, font_path=None, random_state=None):
h, s, l = random.choice([(188, 72, 53), (253, 63, 56), (12, 78, 69)])
return "hsl({}, {}%, {}%)".format(h, s, l)
def create_wordcloud(df, picture):
"""
生成标题以及摘要词云
"""
words = pd.read_csv('chineseStopWords.txt', encoding='gbk', sep='\t', names=['stopword'])
# 分词
text = ''
for line in df['comment']:
text += ' '.join(jieba.cut(str(line), cut_all=False))
# 停用词
stopwords = set('')
stopwords.update(words['stopword'])
backgroud_Image = plt.imread('iqiyi.jpg')
wc = WordCloud(
background_color='white',
mask=backgroud_Image,
font_path='C:\Windows\Fonts\华康俪金黑W8.TTF',
max_words=2000,
max_font_size=150,
min_font_size=15,
prefer_horizontal=1,
color_func=random_color_func,
random_state=50,
stopwords=stopwords
)
wc.generate_from_text(text)
# 看看词频高的有哪些
process_word = WordCloud.process_text(wc, text)
sort = sorted(process_word.items(), key=lambda e: e[1], reverse=True)
print(sort[:50])
plt.imshow(wc)
plt.axis('off')
wc.to_file(picture)
print('生成词云成功!')
全部评论
create_wordcloud(df, '全部.jpg')
# 包含李飞的评论
# df = df[df['comment'].str.contains('李飞|景瑜|飞|飞飞')]
# create_wordcloud(df, '李飞.jpg')
# 包含李维民的评论
# df = df[df['comment'].str.contains('李维民|书记|达康|李局|吴刚')]
# create_wordcloud(df, '李维民.jpg')
# 包含林耀东的评论
# df = df[df['comment'].str.contains('林耀东|东叔|吴劲松')]
# create_wordcloud(df, '林耀东.jpg')
# 包含赵嘉良的评论
# df = df[df['comment'].str.contains('赵嘉良|良叔|任达华')]
# create_wordcloud(df, '赵嘉良.jpg')
# df = df[df['comment'].str.contains('编剧|导演')]
# create_wordcloud(df, '编剧_导演.jpg')
先看一下全部评论的词云图。
口碑很不错,所以也推荐大家去看看哈。
先来看一下「黄景瑜」饰演的「李飞」,该剧的男主角。
有夸的,也有贬的,就我观察弹幕来看,贬大于夸。
「快进」「败笔」「讨厌」「没脑子」,看剧的时候我是有感觉的...
「吴刚老师」饰演的「李维民」,「达康书记」相信大家不会忘吧!
满满的都是赞扬,不愧是演技派。
「王劲松」饰演的「林耀东」,琅琊榜的言侯爷,又一位演技派!
总之一个字「狠」。
「任达华」饰演的「赵嘉良」,在剧中极为可爱...
老戏骨就是不一样,大家都很喜欢。
最后来看一下备受吐槽的编剧和导演们。
有褒有贬,也能说明一些问题。
/ 04 / 总结
相关数据已上传网盘,公众号回复「破冰」即可获取。
在此强烈推荐大家去看这部电视剧。
一方面这部电视剧是以真实案件为例,很真实。
另一方面也可以学一学蔡永强的说话之道,咋就有点蔡永康的感觉...
万水千山总是情,点个「在看」行不行。
··· END ···
更多相关文章
- 为什么你不应该成为一个“数据科学“通才?
- Python数据科学:神经网络
- 用数据分析大家最喜欢什么类型的抖音视频。
- 【知识星球】:Python数据科学学习社区
- JavaScript加密逻辑分析与Python模拟执行实现数据爬取
- Python数据科学:决策树
- 数据整合与数据清洗。
- Python数据科学:Logistic回归
- Python数据可视化:网易云音乐歌单