豆瓣评分TOP50优秀电影数据分析:Python+kettle
当前各行各业的竞争都非常激烈,电影作为一个较大的消费型产业,在人们平时的生活娱乐中占据了不小的消费比例。想要抓住观众的胃口,就要对高评分电影进行数据分析,得出观众喜欢的电影信息。
项目背景
在竞争日益激烈的当今社会,编程语言和工具语言的结合,对于一个工程师而言是很有优势的,所以本项目利用Python+Kettle工具,借助爬取的豆瓣评分TOP50的电影信息,对这些电影来自哪些国家、哪位导演执导、电影类型等情况进行分析。使学生可以从中得到一个综合型的锻炼。
项目描述
明确目标是豆瓣排行TOP50的电影信息。
本次实战主要是针对高分电影的数据分析,得出大家喜爱的电影导演信息、上榜最多的国家等信息。总体流程如下:
- 利用Python编写爬虫程序,得到豆瓣TOP50的数据信息,分别以CSV和XLS文档存储;
- 对获取的数据进行预处理,包括去重、去空格符、删除无用信息、重命名等;
- 对预处理后的数据进行分析提取;
- 从分析结果中获得有价值的信息,生成词云;
- 最后整理所有分析代码,整合为一个主函数调用子函数格式。
项目功能
(1)从爬取页面,选择性爬取所需信息,形成原始数据;
(2)进行数据预处理,主要有无用数据与重复数据的处理;
(3)利用已处理数据作为分析数据,基于电影对应导演、评分和类型来分析观众的喜好;
(4)把分析结果相结合进行可视化展现,让结论更加直观;
(5)针对分析结果绘制词云,便于直观的了解上榜的电影中那些标签。
项目架构
整体项目流程图如下所示:
项目展示
1、爬取数据并分别存储为csv文档和xls文档,部分爬取内容如下图所示:
2、数据预处理,利用kettle工具对存入的xls文档数据进行处理,包括字符串处理、去重等。输出结果为:
3、数据分析,从导演、类型和评分三个大类为主进行数据分析。部分分析结果如下图所示:
(1)国家或地区参与电影制作的排名情况
(2)每个国家参与制作电影总数排名情况,按降序排列前五位
(3)按列统计电影类型总数,再按行汇总
4、数据可视化,采用分析数据结果进行更直观的可视化展现。
(1)评分和排名的关系
(2)电影平均评分走势
(3)国家或者地区上榜数的排名情况
(4)电影类型的排名情况
5、制作词云,为了便于直观的了解上榜的电影中哪些标签非常常见,使用wordcloud制作词云。
(1)得到的电影类型和国家排行组成的新DataFrame标签数据如下:
(2)根据标签数据绘制的词云如下: