2.5. 保存数据到本地
# 将评论数据保存本地def save_csv(df):file_name = '评论数据.csv'if os.path.exists(file_name):df.to_csv(file_name, mode='a', header=False,index=None, encoding='utf_8_sig')else:df.to_csv(file_name, index=None, encoding='utf_8_sig')print('数据保存完成!')
3. 数据统计与可视化展示
本次的数据统计与可视化展示方法可以参考此前推文《只需8招,搞定数据筛选与查询》和《你知道怎么用绘制带交互的可视化图表吗?》等
3.1. 数据预览
抽样5条看看
df.sample(5)
看看数据信息
df.info()
才哥也进行了评论,我们看看是不是采集到了
文章插图
才哥的评论
才哥的为,我们查询一下,发现才哥VIP等级居然6级啦
df.query('userid==1296690233')
head字段是头像,我们看看是不是才哥头像
from skimage import io# 显示头像img_url = df.query('userid==1296690233')['head'].iloc[0]image = io.imread(img_url)io.imshow(image)
对上了,对上了!!
3.2. 分集评论数
绘图参考《你知道怎么用绘制带交互的可视化图表吗?》,所以我们这里是绘制带交互的可视化图,引入环境:
import pandas as pdimport pandas_bokehpandas_bokeh.output_notebook()pd.set_option('plotting.backend', 'pandas_bokeh')
接下来,正式的数据统计与可视化展示开始
from bokeh.transform import linear_cmapfrom bokeh.palettes import Spectralfrom bokeh.io import curdoc# curdoc().theme = 'caliber'episode_comment_num = df.groupby('剧集')['id'].nunique().to_frame('评论数')y = episode_comment_num['评论数']mapper = linear_cmap(field_name='评论数', palette=Spectral[11] ,low=min(y) ,high=max(y))episode_bar = episode_comment_num.plot_bokeh.bar(ylabel="评论数量", title="分集评论数", color=mapper,alpha=0.8,legend=False)
我们可以看到,第一集评论数最高,高达1.7万,占了全部评论的一半;其次是第7集的评论数,主要是本周播到了第7集哈!
3.3. 分日期评论数
df['日期'] = pd.to_datetime(df.time).dt.datedate_comment_num = df.groupby('日期')['id'].nunique().to_frame('评论数')date_comment_num.index = date_comment_num.index.astype('string')y = date_comment_num['评论数']mapper = linear_cmap(field_name='评论数', palette=Spectral[11] ,low=min(y) ,high=max(y))date_bar = date_comment_num.plot_bokeh.bar(ylabel="评论数量", title="分日期评论数", color=mapper,alpha=0.8,legend=False)
从8月30日开播,首播当天会员可看5集,作为会员的我一口气就看完了 。我们发现开播后前2天评论数较多,由于每周1-3更新,所以这几天的评论数整体也较高 。
- 脉冲地暖清洗机多少钱,地暖脉冲清洗机怎么用
- 事情进展的如何用英文怎么说,你那边的事进展如何 英语
- 防止食物被下毒除了用银牌皇帝还发明了别的
- 100条毛巾用来沐浴慈禧的生活作风竟如此奢侈
- Statement详细用法
- root权限有什么用处
- 中国发展是世界机遇|用英语与我们一起回顾历史、见证历史 世界之最历史介绍英文版
- 2022年麒麟820够用吗
- 2022年骁龙660还能用吗
- 踏莎行·术 - NIO系列1:框架拆解