国产烂片深度揭秘
PS:如果各位有疑问的话,可以留下微信,我看到会第一时间加的,以后可以多多交流
1、项目需求
1、看看电影评分分布及烂片情况
2、什么题材的电影烂片最多?
3、和什么国家合拍更可能产生烂片?
4、演员数量是否和烂片有关?
5、不同导演每年电影产量情况是如何的?
2、实现思路
1、读取数据通过直方图和箱型图查看分布情况,筛选top20的烂片
2、从箱型图中提取低于下分位数的影片做题材分类,获得类型内的烂片占比
3、筛选不同地区和国家数据,获得合拍片烂片占比
4、对演员数量进行分类,1-2人,3-4人,5-6人,7-9人,10人以上,查看分组后的烂片占比
5、清洗筛选不同导演07–17年的作品,去掉10部电影下以下导演,制作散点图分查看
3、实现步骤
1.1、导入模块,读取数据
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore')
from pylab import mpl
plt.style.use('classic')
mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
mpl.rcParams['axes.unicode_minus'] = False
from bokeh.plotting import figure,show,output_file
output_file('项目11.html')
from bokeh.models import ColumnDataSource
from bokeh.models import HoverTool
import os
os.chdir('C:\\Users\\Administrator\\Desktop\\项目资料\\项目11国产烂片深度揭秘')
df1 = pd.read_excel('moviedata.xlsx')
1.2、清洗豆瓣评分大于0的数据绘制直方图和箱型图查看数据
df1_dy = df1[['电影名称','豆瓣评分','主演','导演','类型']]
df1_dy = df1_dy[df1_dy['豆瓣评分']>0]
plt.figure()
df1_dy['豆瓣评分'].plot.hist(figsize = (10,4),
bins = 50,edgecolor = 'k',grid = True,
color = 'g',alpha = 0.7,title = '豆瓣评分分布')
plt.figure()
df1_dy['豆瓣评分'].plot.box(figsize = (10,4),
vert = False,grid = True,title = '豆瓣评分分布')
1.3、筛选top20烂片
from scipy import stats
u = df1_dy['豆瓣评分'].mean()
std = df1_dy['豆瓣评分'].std()
print(stats.kstest(df1_dy['豆瓣评分'],'norm',(u,std)))#检验分布
df1_jg = df1_dy[df1_dy['豆瓣评分']<4.3]
df1_jg = df1_jg.sort_values('豆瓣评分',ascending = True)[:20]
df1_jg.index = range(20)
2.1、清洗筛选不同类型影片的烂片占比
df2_lx = []
for i in df1[df1['类型'].notnull()]['类型']:
lxlist =