Python中国社区  »  Python

Python分析网易云音乐近5年热门歌单

Python中文社区 • 2 周前 • 85 次点击  

專 欄


作者:瑶妹妹先生,知乎专栏:折数,关于网络编程、数据挖掘,数据可视化,摄影后期等。

        网易云音乐几乎是我唯一的听歌消遣的平台了,平时剪辑寻找BGM时也上云村。它的特点就是体验、视角效果都很棒,歌单推荐做的也很人性化。

        然后,我抓取了网易云音乐热门歌单中9.8W+的歌单数据,做了些如下分析,当然在分析之前有必要解释下所谓的歌单意义,方便不太常用云音乐的朋友尽快理解以下分析的意义。歌单即:盛放歌曲的袋子。每个用户可创建歌单添加同类型的单曲进去,同时也可将别的歌单添加收藏。同一歌单有不同的分类标签,具体分类示例可以看下面的网易云音乐的导航页截图。

        由于同一歌单可能会有不同的分类,所以按这72种分类抓取的数据会有重复数据,剔重之后6.6万个热门歌单。

        我按不同分类下歌单的相似度做了排行榜如下(红色部分表示相似度):

        从相似度排行榜中看出流行音乐、轻音乐、电子乐和其它歌单的相似度最高。工作、影视原声、Bossa Nova(其实我也不知道Bossa Nova是种什么音乐???搜了一下好像是种爵士乐???)和其它歌单的相似度最低。

        下面是不同分类的歌单去重后的数量分布:

        好,这里暂停一下思考10秒:

        越是左上角,相似度越低,去重后数量越多,则说明此类歌曲最适宜某特定场景下听,比如工作类音乐适合专心致志的听,所以排第一。

        越是右下角,相似度越高,去重后数量越少,则说明此类歌曲最适宜大众场景下听,我将上图的右下角放大后如图,比如流行乐就适合大多数场景听。

        所有当你突然想听歌了,又不知道选什么歌听得话,就索性选流行乐或者轻音乐吧......

        由于翻页器限制,实际上网易云音乐上的歌单肯定是远远不止这点数据的。以下分析都是基于这6.6万多的热门歌单源数据,当然根据歌单首页推荐来以小见大,还是能较大程度的反应云村的整体情况的,毕竟这是人家辛辛苦苦写算法做模型推荐而生的。

        PS:

        1、同一歌曲可能会被加入不同歌单

        2、歌单内,被添加的歌曲不会携带别的歌单的播放分享量等数据

        3、本篇文章都是基于歌单做分析,而不是单曲


         好,首先,我们带着这三个问题去看接下来的文章:


一、网易云音乐歌单近五年增长历史经历了哪些变化?


        从13年初到17年8月这四年半的时间内,这些热门歌单共计产生820万首单曲,3.3亿次收藏,438.7万次分享,411.9万次评论,153.5亿累计播放量。

        先总体看下这四年半时间内网易云音乐的增长历史吧!


        1.新增歌单数量随时间的变化


        近五年来,网易云音乐歌单数据有了翻天覆地的变化,近期每月新增歌单连创历史新高


        2.歌单内新增收录歌曲数量随时间的变化



        一眼望去,从以上两图发现歌单数量和歌单内的歌曲数量在随时间的变化上保持着高度的一致性。

        对增长历史划分不同的阶段:

        14年以前歌曲增长速度较慢,处于萌芽期。

        15年夏季有一次较快增长,处于发展期。

        16年下半年,歌曲被高频次添加,处于稳定增长期。

        17年才过一大半,近几月新增歌曲数就已突破历史新高。

        另外,根据柱状图的起伏状况发现一个很有趣的现象,那就是:“每年夏季新增收录歌曲数较多”,我个人猜测原因可能是“夏季人们精神活力较为充沛,音乐需求量较大所致”。

        由于歌单本身和歌单ID值一一对应,所以歌单ID值也能反映出网易云音乐的增长历史,那么再看一图,你还能发现歌单序号的命名规律


        3.歌单ID随时间的变化

        同理,ID增长规律和歌单数量基本保持一致,4年多内,歌单ID从5位数变到9位数,16年二月份有一次重大跳跃。而且每次跳跃都出现在重大节假日之后,我猜应该是内部调整所致。当然歌单ID并不是绝对的呈现自增规律,不信你看!!!我把16年2月份前后的区间图放大一下!!!

        随着时间的推移,歌单ID值却有高有底。比如2月22号某歌单ID就比21号的某歌单ID值小,说明网易云音乐ID值有回收现象。实际上歌单被删除就可能会造成这种现象。


        4.总体收藏和播放量随时间的变化

        柱状图(收藏量)对应左侧的主坐标,折线图(播放量)对应右侧的次坐标。

        播放量高的歌单收藏量自然也高,说明数据较真实,不存在对某个单一指标刷量行为。

        15年前创建的歌单累计收藏、播放量偏低,想要成为爆红歌单的难度较大,毕竟很多用户都不太愿意听较为老气的歌单。

        近两年创建的歌单收藏、播放量较高,成为爆红歌单的几率较大。

        越新创建的歌单播放、收藏量越低,越是需要时间的磨炼才可能成为爆红歌单。如果说播放量和收藏量能代表歌单的人气度的话,那下面的评论数和分享量更能代表歌单的趣味性和特殊性,因为一个歌单要是仅仅听起来悦耳但又说不出什么好,说不出什么特别之处的话,那我想它的评论数和分享数肯定会很低。相反,要是有个歌单的风格别具一格,那肯定会让人眼前一亮,听音乐的人更愿意参与到评论、分享等互动行为中去。


        5.总体评论和分享量随时间的变化



        同样,分享量和评论数也表现出同步变化。较老气的歌单互动指标越低,越新鲜的歌单互动性越高。从上面两图末尾处看出,越新的歌单播放、收藏量越低,评论、分享数也越低,但不同的是:越新的歌曲播放、收藏量那是超低,而评论数虽然也较低,但相比之下却不是低得那么厉害,看来用户还是比较乐于参与到新鲜歌单的评论中去。


二、网易云音乐用户有哪些使用习惯?

        1.创建歌单的习惯

        比如那么当你想创建歌单了,里面放多少单曲合适呢?1首?2首?3首?10首?50首?100首?看下图吧:

        用户在创建歌单时歌单内单曲盛放数量都是100首以下的居多,特别是整十数,最火爆的存放数是20,50,30......其实都是习惯了整十数而已......



        2.不同导航栏下的播放习惯和互动习惯的差异

        由于每个栏目下,歌单播放数互动的差异较大,所有此处选中位数来描述用户的播放习惯和互动习惯



        用户最喜欢去语言类导航条下寻找歌单,从而带来的播放量最大,且不同导航栏下的差异表现较为明显。

        3.不同类型歌单的适听人群

        歌单由用户创建,如00后的歌单多,可以猜测00后的用户居多......

        what???00后居多???我90后最少???不想说别的了......

        看看不同年龄段用户的使用习惯吧


        从图中看出,90后的歌单人气度和互动数量还是远超其他年龄阶段啊,看来00后只顾创建歌单去了没怎么用心听歌了啊哈???


三、网易云音乐上有哪些值得推荐的歌单?

        我分别按播放量,收藏量,分享数,评论数筛选了TOP30的歌单记为A,B,C,D。然后又取出同时都在ABCD中的那部分重复歌曲,可以说这部分歌曲不论是人气度、趣味性还都挺有特色挺拔尖的,用QQ截图画了个示意图如下:



        图中阴影部分刚好10个歌单,里面共计存放了2千多首单曲。这些歌单信息如下,表格中行标分别为歌曲id,所属导航类,歌单类型,创建时间,收藏量,分享量,评论数,播放数,歌单所存歌曲数。

1.【节奏控】那些超带感的音乐(典藏版)

2.那些只听前奏就中毒的英文歌

3.『震撼心灵的史诗音乐』

4.【欧美男团】秒杀耳朵系列

5.【酷到没朋友】BGM燃点爆炸(持更)

6.高效率专注记忆音乐

7.【旋律控】超级好听的英文歌

8.单曲循环丨绝对不能错过的欧美歌曲

9.【玩游戏】必备电音Buff

10.这些充满『强烈画面感』的音乐


        当然,最后我想说的是,这只是网易云音乐上的冰山一角,我自己的分析的结果也不能就真正代表网易云音乐上的优质歌单,我只是从数据分析的角度挖掘了下云音乐,其实我自己也随机选听下里面的冷门歌单,有的还是真的挺不错的,只是说可能由于运气没被大家发现而已~~


长按扫描关注Python中文社区,

获取更多技术干货!

    

Python 中 文 社 区

Python中文开发者的精神部落

合作、投稿请联系微信:

pythonpost

— 人生苦短,我用Python —
1MEwnaxmMz7BPTYzBdj751DPyHWikNoeFS




今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/GzviSvRBFV
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/4393
 
85 次点击  
分享到微博
分享
社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
WEB开发
linux   Bootstrap   IE   NGINX   js   MQ   其他Web框架   peewee   web工具   Jquery   zookeeper   MongoDB   tornado   Git   Redis   NoSql   bottle   DATABASE  
机器学习
机器学习算法  
Python88.com
公告   社区推广   反馈