目录

一、实现目标¶

二、导入数据并处理

1、导包

2、导入数据

3、缺失值与异常值处理

三、数据分析

1、每周必看的总体数据趋势

2、每周必看的分区排行

三、分区特点

四、数据结论


一、实现目标¶

本项目通过查找B站1-107期《每周必看》栏目相关数据,分析了各个分区在每周必看栏目上的数据,试图简单回答以下问题:

1.B站每周必看的入选标准是什么?

2.不同分区在每周必看栏目上的出现频率?

3.每个分区的视频分别有一些什么数据上的特质?


二、导入数据并处理

1、导包

In [2]:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import plotly.express as px

2、导入数据

In [3]:

data = pd.read_excel('/home/mw/input/bbbb8098/week_bilibili_popular.xlsx')

3、缺失值与异常值处理

In [4]:

#无缺失值与异常值
data.isnull().sum()

Out[4]:

F1             0
标题             0
bv号            0
简介            83
动态           309
推荐理由          45
每周必看期数         0
分区             0
子分区            0
up主            0
播放             0
评论             0
收藏             0
硬币             0
点赞             0
分享             0
弹幕             0
全站排行榜最高排名      0
dtype: int64

三、数据分析

1、每周必看的总体数据趋势

In [5]:

#按期数进行统计
data1 = data.copy()
data2 = data1.groupby('每周必看期数').sum()
data2 = data2.reset_index()
data2 = data2.sort_values(by='每周必看期数')

In [6]:

#定义函数,进行数据归一化
def norm(df,col):df[col]=(df[col]-df[col].min())/(df[col].max()-df[col].min())

In [7]:

data3 = data2.copy()
norm(data3,'播放')
norm(data3,'评论')
norm(data3,'收藏')
norm(data3,'硬币')
norm(data3,'点赞')
norm(data3,'分享')
norm(data3,'弹幕')

In [8]:

fig=px.line(data3,'每周必看期数',['播放','评论','收藏','硬币','点赞','分享','弹幕'],line_shape='spline')
fig.show()

2040608010000.20.40.60.81variable播放评论收藏硬币点赞分享弹幕每周必看期数value

2、每周必看的分区排行

In [9]:

#各个分区在每周必看栏目中所占比例
import plotly.graph_objects as go
values = data['分区'].value_counts(dropna=False)[:20].keys().tolist()
counts = data['分区'].value_counts(dropna=False)[:20].tolist()
value_dict = dict(zip(values, counts))
fig = go.Figure(data=[go.Pie(labels=values, values=counts)])
fig.show()

22.7%14.6%13.8%9.51%8.08%7.67%7.15%4.75%2.4%1.87%1.83%1.8%1.65%1.65%0.561%生活游戏动画知识影视美食音乐鬼畜资讯动物圈数码娱乐舞蹈时尚国创

In [10]:

fig=px.scatter(data,'点赞','播放',color='分区',opacity=0.7,size=np.ones(len(data)),size_max=10,hover_name='标题')
fig.show()

00.5M1M1.5M2M2.5M3M3.5M4M4.5M010M20M30M40M50M60M70M80M

分区生活影视游戏动画美食时尚音乐动物圈资讯娱乐知识鬼畜数码舞蹈国创点赞播放


三、分区特点

In [11]:

#求各个分区视频相关数据的平均值
data4 = data.copy()
data5 = data4.groupby('分区').mean()
data5 = data5.reset_index()
data5 = data5.sort_values(by='分区')
data6 = data5.copy()
#归一化处理
norm(data6,'播放')
norm(data6,'评论')
norm(data6,'收藏')
norm(data6,'硬币')
norm(data6,'点赞')
norm(data6,'分享')
norm(data6,'弹幕')
data6

Out[11]:

  分区 F1 每周必看期数 播放 评论 收藏 硬币 点赞 分享 弹幕 全站排行榜最高排名
0 动物圈 1154.300000 53.200000 0.089256 0.000000 0.078714 0.000000 0.000000 0.186255 0.000000 12.100000
1 动画 1452.907609 66.464674 0.336825 0.365217 0.564630 0.536805 0.505169 0.264565 0.418881 7.847826
2 国创 1162.066667 55.666667 0.076089 0.132260 0.353040 0.061533 0.023657 0.110139 0.186064 13.400000
3 娱乐 1436.187500 65.270833 0.140287 0.815880 0.026596 0.068625 0.180680 0.202845 1.000000 11.791667
4 影视 1431.050926 64.537037 0.129643 0.136555 0.365275 0.201764 0.173301 0.270091 0.211070 11.013889
5 数码 1522.918367 68.795918 0.229434 1.000000 0.669958 1.000000 0.631177 0.634237 0.502059 12.000000
6 时尚 1432.931818 64.340909 0.166123 0.407878 0.755622 0.311115 0.178223 0.335957 0.529974 11.568182
7 游戏 1326.488491 61.112532 0.352100 0.491810 0.280968 0.472393 0.391268 0.222308 0.644682 7.470588
8 生活 1156.425743 55.231023 0.378988 0.519379 0.208371 0.452810 0.579782 0.279807 0.540407 9.031353
9 知识 1619.988189 72.862205 0.000000 0.423044 0.378397 0.325064 0.271347 0.367383 0.428092 9.665354
10 美食 1378.214634 63.019512 0.172013 0.084508 0.000000 0.262113 0.290547 0.000000 0.309589 9.682927
11 舞蹈 1332.681818 61.363636 0.480516 0.454557 0.282799 0.149241 0.089844 0.339882 0.111528 8.977273
12 资讯 1074.046875 51.968750 0.147983 0.558616 0.150726 0.057147 0.242085 0.293216 0.269152 11.109375
13 音乐 1308.120419 60.717277 0.459867 0.681444 0.728005 0.575357 0.477918 0.589944 0.549081 10.685864
14 鬼畜 1198.692913 57.015748 1.000000 0.221075 1.000000 0.907866 1.000000 1.000000 0.424746 11.661417

In [12]:

data6.loc[14:,['分区','播放','评论','收藏','硬币','点赞','分享','弹幕']]

Out[12]:

  分区 播放 评论 收藏 硬币 点赞 分享 弹幕
14 鬼畜 1.0 0.221075 1.0 0.907866 1.0 1.0 0.424746

可以看出,鬼畜区的视频在播放、评论、硬币、点赞、分享上都具有显著的优势。

In [13]:

data6.loc[6:6,['分区','播放','评论','收藏','硬币','点赞','分享','弹幕']]

Out[13]:

  分区 播放 评论 收藏 硬币 点赞 分享 弹幕
6 时尚 0.166123 0.407878 0.755622 0.311115 0.178223 0.335957 0.529974

另一方面,时尚区的各项数据中,唯独“收藏”一值非常的高。实际上,这是得益于时尚区的部分健身、锻炼视频,有着非常高的收藏量。


四、数据结论

通过以上的分析,我们可以得出以下一些结论:

1.在45期(2020.1.24)之前,随着B站用户的增多,每周必看栏目上视频的各项数据稳步上升。45期开始,由于疫情原因,加上拜年祭系列的视频,每周必看栏目的数据开始大幅上升,之后再缓慢回落。

2.可以看出,栏目中视频的播放量,在春节、国庆、元旦等假期时会有明显的增幅,这也符合我们的直观感受。

3.在各个分区中,生活、游戏、动画是B站分区里的“三幻神”,在高质量视频的总量上占据绝对优势。

4.鬼畜区的视频,平均播放、收藏、点赞均位居第一位,可见优秀的鬼畜视频很容易就可以达到“破圈”的效果。

5.时尚区的健身视频有着极高的收藏量,应了那句“看了就是做了”的调侃。娱乐区视频评论、弹幕量极多,观众更愿意去分享自己的感受。

OK搞定辽,相关数据集资源有需要的话,欢迎在评论区留言,感谢支持!!

Python:【B站每周必看】分区数据分析相关推荐

  1. python b站日排行榜_B站2020年每周必看热门视频数据盘点!Python数据分析

    1.数据抓取 数据集的获取是我们进行数据分析的第一步.现在获取数据的主要途径一般为:现成数据:自己写爬虫去爬取数据:使用现有的爬虫工具爬取所需内容,保存到数据库,或以文件的形式保存到本地. 博主用的是 ...

  2. B站2020年每周必看热门视频数据盘点!Python数据分析

    1.数据抓取 数据集的获取是我们进行数据分析的第一步.现在获取数据的主要途径一般为:现成数据:自己写爬虫去爬取数据:使用现有的爬虫工具爬取所需内容,保存到数据库,或以文件的形式保存到本地. 博主用的是 ...

  3. B站2020年每周必看热门视频数据盘点(数据分析)1.数据抓取2.数据清洗3.数据分析及可视化

    1.数据抓取 数据集的获取是我们进行数据分析的第一步.现在获取数据的主要途径一般为:现成数据:自己写爬虫去爬取数据:使用现有的爬虫工具爬取所需内容,保存到数据库,或以文件的形式保存到本地. 博主用的是 ...

  4. Android 每周必看资源

    1 每周必看的网站: https://github.com 程序员的代码天堂 http://p.codekk.com/ 众多的开源库,开源框架的解析. http://www.trinea.cn/ An ...

  5. 超好用的5款开发工具,Python初习者必看

    很多Python初习者想必都会有如下感悟:最开始学习Python的时候,因为没有去探索好用的工具,吃了很多苦头.后来工作中深刻体会到,合理使用开发的工具的便利和高效.今天,小千就把Python程序员使 ...

  6. python棋盘格_干货必看 | Python的turtle库之经典棋盘格

    国际棋盘格是一个由9横9纵的线组成的格子正方形,用Python的turtle库进行绘制的时候,先做9横9纵的线,再填上灰色小正方形,这就可以完成一个棋盘格了,下面是具体的操作步骤. (一)整体代码 1 ...

  7. 让你少走弯路 建站新手必看的十大忠告

    对于从零开始建网站的新手,知道下面十大忠告,可以少走弯路,早日走上康庄大道. 1.一定要做网站规划方案 一个网站的成功与否与建站前的网站规划有着极为重要的关系.在建立网站前应明确建设网站的目的,确定网 ...

  8. 推荐8本高质量的Python书籍,初学者必看

    Python是一种多功能语言.它经常用作Web应用程序的脚本语言,嵌入到软件产品中,以及人工智能和系统任务管理.它既简单又强大,非常适合初学者和专业程序员. 今天,小千选择几本高质量的Python书籍 ...

  9. Python考试题,大学生必看

     给你分享一下我自己亲身经历过的python考试题 记得点个关注~ 你可以参考下面的题进行练习,考试题换汤不换药,希望对你有帮助~ 一.选择题 1.下列哪个语句在Python中是非法的?( B ) A ...

最新文章

  1. 生成随机验证图片--ASP.NET中常用代码之二
  2. C++ string类的方法
  3. 第四周课程总结及实验报告
  4. 【STM32】中断优先级管理
  5. 单色半透明-兼容IE7
  6. 【题解】Atcoder ARC#90 F-Number of Digits
  7. html缩进快捷键_Windows IDEA 快捷键终极大全,果断收藏!
  8. 是介于小型机和微型计算机,第一章计算机基础解析.ppt
  9. 远程办公、游戏迅猛增长,旅行、汽车业遭重创!疫期移动互联网行业报告解读...
  10. github的学习和使用
  11. linux usb摄像头 监控软件,Linux下的motion detection(最简单的办公室监控系统)
  12. 《调试软件》作者主页
  13. 计算机显示u盘隐藏分区,Win10下U盘多分区启动盘被显示怎么隐藏方法
  14. WGS84 坐标系转到J2000坐标系
  15. 【python教程入门学习】Python转义字符及用法
  16. 如何运用MATLAB实现K-MEANS聚类分析
  17. 【云原生之k8s】k8s管理工具kubectl详解
  18. cron表达式详解!!!!
  19. 【Springboot】Spring与Springboot简介
  20. 谷歌翻译 google translation API github开源 实践

热门文章

  1. 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-3.路由、模型与数据库操作
  2. coalesce函数(oracle coalesce函数)
  3. 拉卡拉支付明确自身定位 推动市场变革
  4. 操纵Review被封店,申诉信
  5. java 建立索引_java中怎么创建索引
  6. Qt 关于窗口全屏显示与退出全屏的实现
  7. 彩票 量子计算机,科学家已打造出可生成多个未来的量子计算机 暂时不能预测彩票...
  8. 中华好诗词大学季第二季(二)
  9. Ubuntu18.04之shutdown开/关机
  10. 使用move_uploaded_file函数报错原因