数据分析:从歌词了解歌手

结巴(jieba)是国人开发的一款插件,可以对中文进行分词,根据分词粒度的粗细,可以获取一些意想不到的信息

开源地址:http://www.oschina.net/p/jieba/

下面实例分析,从歌词文本获取歌手的高频词汇,侧面了解歌手表达的主题

#coding=utf-8
import os
from collections import Counter
import jieba

#同一首歌中出现多次的词,只能算作一次
all_words = []    #用词列表
L = os.listdir(r‘C:\Users\HP\Desktop\lyrics‘)
print L   #[‘\xb3\xc9\xb6\xbc.txt‘, ‘\xb9\xc4\xc2\xa5.txt‘....]
for filename in os.listdir(r‘C:\Users\HP\Desktop\lyrics‘):
    filename1 = filename.decode(‘gbk‘)
    print filename1
    with open(‘C:/Users/HP/Desktop/lyrics/‘ + filename1) as f:
        lyrics = f.read()
        data = jieba.cut(lyrics)
        print type(data)
        all_words.extend(set(data))  #set(data)去除重复的词,得到这首歌的用词列表

count = Counter(all_words)   #统计出现次数,以字典的键值对形式存储,元素作为key,其计数作为value。
result = sorted(count.items(), key=lambda x: x[1], reverse=True)  #key=lambda x: x[1]在此表示用次数作为关键字

for word in result:
    print word[0], word[1]   

输出:

源码分析:

1.os.listdir(r‘C:\Users\HP\Desktop\lyrics‘):获取指定目录下的文件名称

注:必须保证运行时在当前目录,即C:\Users\HP\Desktop\lyrics

2.open(‘C:/Users/HP/Desktop/lyrics/‘ + filename1):filename1需是能看懂的字符,不能是unicode或者其他非人类的字符

3.sorted(listname,key=lambda x: x[1]):key表示用列表元素的某个属性和函数进行作为关键字

4.‘C:/Users/HP/Desktop/lyrics/‘和‘C:\Users\HP\Desktop\lyrics‘区别

时间: 2024-10-28 01:09:33

数据分析:从歌词了解歌手的相关文章

Python大佬分析了15万歌词,告诉你民谣歌手们到底在唱什么

前几天小编写了两篇利用Python采集网易云歌词和采集网易云音乐歌曲文章,相信小伙伴们经过实践之后都能够顺利的采集到自己想要听的歌曲.下面的歌词是小编去年11月份采集的民谣歌词,经过统计,歌词量达到将近15万. 用Python采集的民谣歌词 心血来潮,想利用Python来分析一下民谣歌手们到底在唱些什么鬼~~ 首先运用jieba库进行分词和词频统计分析,得到歌词中的词频统计,部分主要代码如下图所示: 运用jieba库进行分词和词频统计分析 得到的词频后将其导入到Excel表格中,详情如下图: 民

利用python广西快乐十分源码出租爬取网易云歌手top50歌曲歌词

python广西快乐十分源码出租 dsluntan.com Q:3393756370 VX:17061863513近年来,发展迅速,成为了最炙手可热的语言. 那么如何来进行网易云歌手top50的歌曲歌词爬取呢 首先进行网易云并进行喜欢的歌手搜索如下: 在这里需要注意的是http://music.163.com/#/artist?id=1007170并不是真的我们需要的连接,真实的链接应该是http://music.163.com/artist?id=1007170 搞清楚了连接的问题之后,就要进

Android开发本地及网络Mp3音乐播放器(十五)网络音乐及歌词下载功能实现

实现功能: 实现网络音乐歌词下载功能(下载音乐的同时,下载对应歌词) 下载好的歌词目前不在播放器内,可以通过文件浏览器查看. 后续将博文,将实现本地音乐歌词下载和已下载音乐扫描功能. 因为,没有自己的服务器,所以网络音乐所有相关功能(包含搜索音乐.下载音乐.下载歌词)均无法保证时效性,建议,尽快下载和练习:如果你下载时候,已经因为我采集的服务器更改规则,请给我留言,如果可以解决,我将在有空的时候献上新的源码. 截止到目前的源码下载: http://download.csdn.net/album/

Objective-C歌词解析

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { FILE* fp1;//定义文件指针用于读文件 char* fp2;//用来判断是否歌词读完 char s[80];//暂存歌词 long int time2=0; long int time=0;//用来计算时间,精度为秒,不够完善,望高人指点 int a=1;//起判断作用 fp1=fopen("/Users/qingyun/De

android音乐播放器开发 SweetMusicPlayer 智能加载在线歌词

上一篇写了使用MediaPlayer播放音乐, http://blog.csdn.net/huweigoodboy/article/details/39862773,如果没有本地歌词怎么办?现在来将一下加载在线歌词.好了,还是用那张图. 在实现这个功能的时候,lz尝试过baidu api,歌词迷api,后来选用了歌词迷api,虽然还是资源不全,而且还有很多错误.特别头疼的是有时候歌词居然不分行,解析起来简直难受. 歌词迷api歌词查询地址:http://geci.me/api/lyric/ 比如

歌词VSM实现!!!

主体VSM_SetUP.cpp; 1 /*[ar:歌词作者] 2 [ti:歌词(歌曲)的标题] 3 */ 4 //编写程序实现lrc(歌词) 文件的检索,检索模型要求采用向量空间模型.请将源程序和文档压缩后,一并上传. 5 #include<iostream> 6 7 #include"Document_Index.h" 8 9 using namespace std; 10 void main() { 11 cout << "*****本程序实现一个

轻仿QQ音乐之音频歌词播放、锁屏歌词-b

先上效果图 歌词播放界面 音乐播放界面 锁屏歌词界面 一. 项目概述 前面内容实在是太基础..只想看知识点的同学可以直接跳到第三部分的干货 项目播放的mp3文件及lrc文件均来自QQ音乐 本文主要主要讲解锁屏歌词的实现,音频.歌词的播放网上资源略多,因此不做重点讲解,项目也是采取最简单的MVC+storyboard方式 项目GitHub地址: https://github.com/PengfeiWang666/WPFMusicPlayer 音乐模型-->WPFMusic /** 图片 */ @p

OC lrc歌词解析

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {     FILE* fp1;//定义文件指针用于读文件     char* fp2;//用来判断是否歌词读完     char s[80];//暂存歌词     long int time2=0;     long int time=0;//用来计算时间,精度为秒,不够完善,望高人指点     int a=1;//起判断作用     fp1=f

android音乐播放器开发 SweetMusicPlayer 智能负载直插式歌词

在一份书面的使用MediaPlayer播放音乐, http://blog.csdn.net/huweigoodboy/article/details/39862773.假设没有本地歌词怎么办?如今来将一下载入在线歌词.好了,还是用那张图. 在实现这个功能的时候,lz尝试过baidu api,歌词迷api,后来选用了歌词迷api.尽管还是资源不全.并且还有非常多错误. 特别头疼的是有时候歌词竟然不分行.解析起来简直难受. 歌词迷api歌词查询地址:http://geci.me/api/lyric/