Movielens/IMDB电影数据分析(三)

接着上一篇文章的内容。本文主要进行数据清洗:

  1. 电影时长不是数值,而是字符串
  2. 电影流派不是原子数据,很难提取特定的流派做分析。
  3. 上映年份格式修正
  4. 投票数修正为整型

本来以为自己爬取的数据存在两个瑕疵,但是在实际应用中发现,还有一个巨大的瑕疵:desecribe的时候,发现Votes一列不能被describe。

进行info查看信息的时候,发现Votes是一组对象,不为整型。使用int()函数强制转换的时候,出现报错。这才想起,爬取的数据为带逗号的数字,在python中被识别为字符串。

1.将电影时长转换为整型

遍历电影时长,将时长进行分裂(以空格分裂),分裂后成为列表,列表的第一个元素即为时长,转换为浮点型替换原有时长。

2.电影流派不是原子数据,很难提取特定的流派做分析。

首先创建一个空的set(set函数用于创建无序不重复元素集)。

然后,遍历Genres,Genres中的每个元素又为一个列表,遍历列表中的每个元素,利用逗号进行分裂,对分裂后的元素去除空格,然后再进行排序。

为每个流派创建一个单独的列,利用布尔型表示其流派信息。

3.上映年份格式修正

先使用正则表达式匹配年份,然后将匹配的年份由字符串转换为整型,再遍历列表进行替换。

4.投票数修正为整型

先使用逗号分裂字符串,分裂后的对象为一个列表,遍历列表,利用join函数对列表元素进行拼接,然后遍历整个data进行替换。

猜你喜欢

转载自blog.csdn.net/qq_41996090/article/details/87901924