对电影题材分析的案例-电影类型与电影利润之间的关系(2021/07/24)
如题,分析内容是电影题材和电影利润之间的关系。
其中电影题材的数据格式比较特殊,那么就用这个案例体现怎么处理此类数据格式。
从数据中看,每个电影对应好几种题材(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)相关推荐
- python计算各类型电影的评分_python(15)-pandas-多类型统计-电影分类问题
1.情境描述:用于电影分类,一个电影可以属于好几类. 按类型统计片子数. 2.实现步骤:读文件->统计分类->全0数组(行,列)->赋值为1->各列求和 3.知识点: 3.1嵌 ...
- Spring源码分析之Aop中拦截器,适配器,通知之间的关系
首先举一个例子: public class MethodBeforeAdviceInterceptor implements MethodInterceptor, Serializable {priv ...
- Spark商业案例与性能调优实战100课》第2课:商业案例之通过RDD实现分析大数据电影点评系统中电影流行度分析
Spark商业案例与性能调优实战100课>第2课:商业案例之通过RDD实现分析大数据电影点评系统中电影流行度分析 package com.dt.spark.coresimport org.apa ...
- 电影则选择以下几种类型的题材
电影则选择以下几种类型的题材: 1.励志类电影:励志是少年成长时的积累和渴望,正因为有了渴望才拥有了腾飞的梦想,正因为有了积累才拥有了收获的喜悦.有时候一部经典影片,赋予你的却是无限的正能量.在这里没 ...
- 案例分析-电影评分分析
电影评分分析 数据 原始数据展示 json格式说明 数据字段含义 需求 1.每个用户评分最高的10部电影评分信息(用户最喜爱的十部电影) 2.每个用户的uid和评分的平均值. 3.最大方(评分平均值高 ...
- 基于机器学习的电影票房分析与预测系统
温馨提示:文末有 CSDN 平台官方提供的博主 Wechat / QQ 名片 :) 1. 项目简介 票房作为衡量电影能否盈利的重要指标受诸多因素共同作用影响且其影响机制较为复杂,电影票房的准确预测是比 ...
- 多种方法爬取猫眼电影并分析(附代码)
数据科学俱乐部 中国数据科学家社区 ♚ 作者:苏克,零基础转行python爬虫与数据分析 博客:https://www.makcyun.top 摘要: 作为小白,爬虫可以说是入门python最快和最容 ...
- 基于KNN的电影题材分类
我们主要来实践 KNN 分类算法的案例:基于KNN的电影题材分类 代码分析 导入工具包 import numpy as np import pandas as pd from collections ...
- python爬取豆瓣电影并分析_爬取豆瓣电影top250提取电影分类进行数据分析
标签(空格分隔):python爬虫 一.爬取网页,获取需要内容 我们今天要爬取的是豆瓣电影top250 页面如下所示: 我们需要的是里面的电影分类,通过查看源代码观察可以分析出我们需要的东西.直接进入 ...
最新文章
- 几种典型磁铁表面的磁感应强度的变化
- 在大型软件中用Word做报表: 书签的应用
- 网页性能管理详解:浅谈chrome-Timeline及window.requestAnimationFrame()方法
- Spring Cloud Finchley版中Consul多实例注册的问题处理
- python六十: __doc__属性
- Android宫格动态列,Android实现宫格图片连续滑动效果
- Linux下程序的保护机制(checksec)
- Git 添加到Git 仓库
- 简单概述 .NET Framework 各版本区别
- 【Android Developers Training】 1. 创建一个Android项目工程
- Struts2 初探
- 名词从句、定语从句、状语从句的位置及图示
- ES的基本API操作
- 手把手教你免费、批量转换HEIC图片到JPG
- 闲谈隐性成本(太多人的思维盲区)
- SDNUOJ——1121.小树林2
- el表达式ne什么意思_JSP中EL表达式的用法详解(必看篇)
- 一次网络请求是如何实现的
- shell脚本写出一个简单的猜价格游戏
- 你踩过几个?盘点微信H5小游戏开发中的那些坑 1
热门文章
- Android UI 渲染机制的演进,你需要了解什么?
- Python+cplex运筹优化学习笔记(三)-营养膳食选择
- 英语语法----英语句子成分与五大句型
- Button扩展累CButtonST修改字体、背景色和背景图片
- 在线付费起名源码/宝宝起名/八字起名/周易取名/周易八字起名平台网站源码
- IP地址的子网划分和子网掩码
- 站长爆料:大量黑产利用高权重网站霸屏引流
- navicat与phpstudy的冲突解决
- 普通人如何实现财务自由
- webpack:error Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style