我用Python分析了42万字的歌词,为了搞清楚民谣歌手们在唱些什么

浏览: 12667

个人公众号:「超级王登科」(ID:superwdk)

听了这么多年民谣,我有一种感觉,就是很多歌都似曾相识,但是仔细一想,又哪一首都想不起来,为了搞清楚这群流浪在祖国大地的现代游吟诗人们都在唱些什么,我做了一些数据分析的工作。

我选取了大约30个覆盖从程序员,朋克,基佬到女权主义者,中国大妈,穆斯林的能够覆盖所有人群的民谣歌手和乐队,包括李志,夭十三,赵雷,宋冬野,周云蓬,逃跑计划等等,为了设立参照,我还取了一些其他风格的乐队,比如老一些的汪峰,窦唯,朴树和新一些的低苦艾,谢天笑,反光镜,草东等等。

第一步:写爬虫

我首先写了一个爬虫,它可以根据歌手或乐队的名字来自动抓取这个歌手的所有歌,为了保证平衡,我最多只抓取前50首歌,老实说,大多数歌手被人熟知的歌并不会超过这个数字。



这样,我得到了小一百个装满歌词的文件,鼠标滑过就能感觉到从里面溢出来的文艺气息,我感觉一阵忧郁袭来,为了写接下来的代码,我吹掉了一瓶可乐。

Clipboard Image.png

接下来,我开始了对这些歌词(约42万字)的分析。

第二步:情绪分析

首先是情绪分析,通过对这些歌词的自然语言处理,我知道了不同歌手们吟唱的到底是开心还是不开心的事情:

Clipboard Image.png


数值的分布比较平均,但大致可以看得出有三个分类,一类是特别开心的,例如郝云。但是我一开始也不太懂,为什么丢火车的情绪也这么高,后来听了几遍他们的歌,发现他们虽然唱腔惨兮兮的,但是歌词还是充满正能量的,丢火车乐队歌词中出现次数最多的三个词分别是「永远」「晚安」「倔强」,这些都是正面情绪的词。第二类则是比较忧伤的,以我们熟悉的逼哥为代表,他们的歌词中充斥着孤独,沉默,泪水等词语。虽不暴力,但是多少有一些黑暗。


Clipboard Image.png

第三类则以赵雷为代表,比较平静,就像一个朋友给你讲故事,不疾不徐,娓娓道来,里面也有开心,也有难过,但总体情绪趋于中值。这也许解释了为什么赵雷这么晚才火起来的原因——平淡的情绪较难快速给人以强烈的冲击。但无论如何,好的音乐总会被人们发掘。

基于某种趣味,我又分析了一下其他风格的音乐的情绪:

Clipboard Image.png

民谣的情绪很丰富,而摇滚的情绪则大多是负面的,人们说,没有愤怒就没有摇滚,这话至少在歌词的情绪上是正确的。

民谣歌手最喜欢什么季节?通过对歌词的分析,这个问题也可以解决:

Clipboard Image.png



其中,春天出现了81次,冬天出现了74次,夏天和秋天各出现了70和47次。由此可见,最受欢迎的是春天和冬天,最不受欢迎的是秋天。但我个人觉得秋天挺好的,秋高气爽,菜价便宜。

同样的,我也分析了歌手们最喜欢的城市,结果如下:

Clipboard Image.png

可以看得出,北方城市完全战胜了南方城市,成了在歌词中被唱的最多的地方,特别是北京,一共出现了81次。说到一线城市,人们会说北上广深,但是在民谣的世界里,北京绝对是不可撼动的存在。南方城市只有成都勉强露了几个照面。作为一个成都人,我对此还挺高兴的。

难以理解的是,虽然北方城市大获全胜,但是歌手们却更多的念叨着「南方」而不是「北方」,「南方」比「北方」多出现了大约5.7%

Clipboard Image.png

另一个我感兴趣的问题是,民谣歌手们是在向前看还是向后看,是往未来寄托希望,还是缅怀过去?


Clipboard Image.png


看得出,民谣歌手是在往前看的,至少是活在当下的,「明天」这个词在歌词中出现的次数最多,接着是「今天」和「昨天」,而「前天」和「后天」则几乎可以忽略不计,这也是可以理解的,比如说「我拿青春赌明天」,这听上去很美好,如果要说「我拿青春赌后天」乃至于「我拿青春赌下个月5号」,这听上去就像一个赌徒发疯了。

在我的统计中,出现最多的几个意象是:再见,姑娘,夜空,孤独,快乐。

如果把民谣拟人化,那应该是一个喜欢南方的北京小伙子,觉得世界很操蛋,但骂归骂,到底是对生活有希望的,憧憬着明天,在春天感到快乐,在冬天感到孤独,没有女朋友,但有几个纠缠不清的前女友,经常和她们见面,见面的地方可能是成都,昆明,南京,上海,武汉。。。。。

最后推荐一下我珍藏多年的汽缸汪汪乐队,虽然他们只出了半首歌,但依然非常不错。哈哈。

Clipboard Image.png


推荐 10
本文由 超级王登科 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

10 个评论

学习下
比较有意思,在分析下热门歌曲相对偏门歌曲有哪些特性
求代码共享实操,谢谢。
建议,能不能用分析的高频字段,谱几首歌出来,把这些歌的曲谱分析下,看看那些旋律被大众喜欢
很文艺
厉害
博主利用python自带的作图还是利用的作图工具,好漂亮的图!
有意思。不错。
求博主源码学习
可以看一下您的源码学习一下么?

要回复文章请先登录注册