数据分析案例:统计电影分类情况(1)

26行的temp_type_list是一个列表,每一项也是一个列表,每一个列表项存放每一部电影的分类信息。

在30行中使用两层循环将temp_type_list展开成一位数组。

对分类信息计数

==================================================================

首先要拿出一组数据表示这些电影有哪几种分类,这里就用到了set集合这个数据类型不重复的特性(34行)。

因为一部电影不会有两个一样的分类信息,所以在30行的type_list(统计出来的电影的所有分类信息,有重复)中直接进行每种分类的计数即可,这里定义一个函数CountItemNum(item,list)以方便后面代码使用。

38行的genre_count_list为数量的列表,与genre_list中分类一一对应。

生成数据图

================================================================

使用条形图或直方图(plt.hist()),0轴为分类名,1轴为该分类的电影数量。

(因为前面使用了set集合,集合具有无序性,每一次运行的时候数据图中的数据顺序不一样,但数量对应上了,问题不大)

Code

===============================================================


import numpy as np

import pandas as pd

from matplotlib import pyplot as plt



# 取消行和列的省略

pd.set_option('display.max_columns', None)

pd.set_option('display.max_rows', None)



###########################################

def CountItemNum(item_1, list_1):

    count_num = 0

    for i in list_1:

        if i == item_1:

            count_num += 1

    return count_num





movieDataFile = 'dataFiles/IMDB-Movie-Data.csv'

mov_df = pd.read_csv(movieDataFile)



print(mov_df.head(1))

# print(mov_df['Genre'])



# 获得电影分类列表

temp_type_list = mov_df['Genre'].str.split(',').tolist()

print(temp_type_list)



# 所有分类的列表(重复)

type_list = [i for j in temp_type_list for i in j]

print(type_list)



# 所有分类的列表(不重复)

genre_list = list(set(type_list))

print(genre_list)



# 分类对应的数量

genre_count_list = []

for item in genre_list:

    # item为分类名,由于一部电影不会有两个一样的分类名,直接计数即可

    genre_count_list.append(CountItemNum(item, type_list))



print(genre_count_list)



# 生成数据图

matFont = {

 **自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**

**深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**

**因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**

![img](https://img-blog.csdnimg.cn/img_convert/c077dfa11877d4a07483bb908f8911a8.png)

![img](https://img-blog.csdnimg.cn/img_convert/e0fa32ff8f5cfc335d8a3d6c4dc8abf5.png)

![img](https://img-blog.csdnimg.cn/img_convert/a21917fb0f3493deb22b1fb333d3f775.png)

![img](https://img-blog.csdnimg.cn/img_convert/fe0a1909966879d93236ec302ff054ff.png)

![img](https://img-blog.csdnimg.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)

![img](https://img-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**

**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**

**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**

小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**

**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**

**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**

![](https://img-blog.csdnimg.cn/img_convert/8dcdeee59ac8b52ae9bd3492a43bc131.jpeg)
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值