如题,分析内容是电影题材和电影利润之间的关系。

其中电影题材的数据格式比较特殊,那么就用这个案例体现怎么处理此类数据格式。

从数据中看,每个电影对应好几种题材(genres)。

那么,我们的大概思路是,将数据处理成(一个电影对应)一个题材,对应一个利润。

话不多说我们先放代码

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt#读取数据
df = pd.read_csv('movie_metadata.csv',usecols=[0,1,2,3,4,5,6,7,8,9,10,11,13,15,27])
data = df.dropna(how='any')#处理数据
genres_data = pd.DataFrame(columns=['genres','gross'])
for i,row_data in data.iterrows():genres = row_data['genres'].split('|')n_geners = len(genres)dict_obj={}dict_obj['genres'] = genresdict_obj['gross'] = [row_data['gross']] * n_genersgenres_df = pd.DataFrame(dict_obj)genres_data = genres_data.append(genres_df)
# genres_data.to_csv('genres_data.csv',index=None)
genres_data#绘制图片1
genres_count = genres_data.groupby('genres').size()
plt.figure(figsize=(15.0,10.0))
genres_count.plot(kind='barh')
plt.savefig('genres_count.png')
plt.show()
#绘制图片2
genres_gross = genres_data.groupby('genres')['gross'].sum()
plt.figure(figsize=(15.0,10.0))
genres_gross.plot(kind='barh')
plt.savefig('genres_gross.png')
plt.show()

其中处理数据的部分是特点。

1.新建一个空白的df用于存放结果,我们对于结果的设计如下图:

每一行的标识可以理解为 movie1+genres1,movie1+genres2.......movieN+genresN

genres_data = pd.DataFrame(columns=['genres','gross'])

一开始对迭代器不太了解,可以通过下面一段代码测试查看迭代器取数的结果。

for i,row_data in data.iterrows():print(i)print(row_data)print('*'*20)

打印出来的row_data我理解上是一个series。

取出每行的genres,用split()拆分

for i,row_data in data.iterrows():genres = row_data['genres']print(genres)

拆分后

for i,row_data in data.iterrows():genres = row_data['genres'].split('|')print(genres)

准备新建一个空字典,后期通过字典将数据转换成dataframe,再将dataframe拼接就可以。 字典的预期效果如图

字典中‘gross’的数据

for i,row_data in data.iterrows():genres = row_data['genres'].split('|')n_genres = len(genres)dict_obj={}dict_obj['gross']=[row_data['gross']]*n_genresprint(dict_obj['gross'])# print([row_data['gross']])

用将字典转换成一个个的dataframe。

for i,row_data in data.iterrows():genres = row_data['genres'].split('|')n_genres = len(genres)dict_obj={}dict_obj['gross']=[row_data['gross']]*n_genresdict_obj['genres']=genresgenres_df=pd.DataFrame(dict_obj)print(genres_df)

最终画出来的图的效果。

对电影题材分析的案例-电影类型与电影利润之间的关系(2021/07/24)相关推荐

  1. python计算各类型电影的评分_python(15)-pandas-多类型统计-电影分类问题

    1.情境描述:用于电影分类,一个电影可以属于好几类. 按类型统计片子数. 2.实现步骤:读文件->统计分类->全0数组(行,列)->赋值为1->各列求和 3.知识点: 3.1嵌 ...

  2. Spring源码分析之Aop中拦截器,适配器,通知之间的关系

    首先举一个例子: public class MethodBeforeAdviceInterceptor implements MethodInterceptor, Serializable {priv ...

  3. Spark商业案例与性能调优实战100课》第2课:商业案例之通过RDD实现分析大数据电影点评系统中电影流行度分析

    Spark商业案例与性能调优实战100课>第2课:商业案例之通过RDD实现分析大数据电影点评系统中电影流行度分析 package com.dt.spark.coresimport org.apa ...

  4. 电影则选择以下几种类型的题材

    电影则选择以下几种类型的题材: 1.励志类电影:励志是少年成长时的积累和渴望,正因为有了渴望才拥有了腾飞的梦想,正因为有了积累才拥有了收获的喜悦.有时候一部经典影片,赋予你的却是无限的正能量.在这里没 ...

  5. 案例分析-电影评分分析

    电影评分分析 数据 原始数据展示 json格式说明 数据字段含义 需求 1.每个用户评分最高的10部电影评分信息(用户最喜爱的十部电影) 2.每个用户的uid和评分的平均值. 3.最大方(评分平均值高 ...

  6. 基于机器学习的电影票房分析与预测系统

    温馨提示:文末有 CSDN 平台官方提供的博主 Wechat / QQ 名片 :) 1. 项目简介 票房作为衡量电影能否盈利的重要指标受诸多因素共同作用影响且其影响机制较为复杂,电影票房的准确预测是比 ...

  7. 多种方法爬取猫眼电影并分析(附代码)

    数据科学俱乐部 中国数据科学家社区 ♚ 作者:苏克,零基础转行python爬虫与数据分析 博客:https://www.makcyun.top 摘要: 作为小白,爬虫可以说是入门python最快和最容 ...

  8. 基于KNN的电影题材分类

    我们主要来实践 KNN 分类算法的案例:基于KNN的电影题材分类 代码分析 导入工具包 import numpy as np import pandas as pd from collections ...

  9. python爬取豆瓣电影并分析_爬取豆瓣电影top250提取电影分类进行数据分析

    标签(空格分隔):python爬虫 一.爬取网页,获取需要内容 我们今天要爬取的是豆瓣电影top250 页面如下所示: 我们需要的是里面的电影分类,通过查看源代码观察可以分析出我们需要的东西.直接进入 ...

最新文章

  1. 下一站:AlphaDrug?
  2. QT 信号与槽 最简单例子
  3. 交换机调试工具_工业以太网交换机安装流程图解
  4. 探讨如何成为技术团队管理者
  5. [转载]AxureRP 7.0部件详解(一)
  6. TextView设置缩略显示
  7. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(配置数据库监听_09)
  8. Java基础:JDBC
  9. IOS开发自定义tableviewcell的注意点
  10. Linux安装Diamond软件,Diamond软件比对蛋白质数据库
  11. matlab与焓湿图,excel与焓湿图的完美结合
  12. WPS快捷键之 通用基础
  13. FPGA数字IC的Verilog刷题解析基础版02——T触发器(异步复位和同步复位)
  14. mysql drop column_MySQL DROP COLUMN
  15. 计算机硬件和软件的主要功能,网络技术在计算机软硬件的作用
  16. 最强赛亚人服务器维护,最强赛亚人官方,最强赛亚人手游官方正版预约 v1.1.0-手游汇...
  17. android气泡样式图片,Android实现三角形气泡效果方式汇总
  18. window10桌面管理器占内存太高解决办法
  19. 艾特网能全面参与数据中心蒸发冷却空调系列标准编制
  20. Kepware Ping驱动的应用

热门文章

  1. android开发从小工到专家 1116
  2. 软考初级资格考试哪个好考?
  3. php对电话号码生成图片,帝国CMS插件之手机号码生成图片格式插件
  4. win10下Anaconda中tensorflow2.4.1的下载
  5. 使用python进行收据搜集示例之different_format_data_processing
  6. Linux性能优化学习
  7. 喷泉模型(fountain model) 并行开发+重叠反复
  8. python exe程序注册为window系统服务
  9. ROS - UR3机械臂添加robotiq FT sensor和robotiq 140 2指夹爪
  10. Javaoop——Filo I/O