1、明确分析需求
1.1数据介绍
项目介绍:由vgchartz.com的一个刮版生成的,有一份综合的游戏行业销售数据,希望产生一份综合的游戏行业报告
数据介绍:包含游戏名称、类型、发行时间、发布者以及在全球各地的销售额数据。
字段包括
RANK-总销售额的排名
Name-游戏的名字
Platform-游戏发布平台(即PC,PS4等)
Year-游戏发行的年份
Genre-游戏的类型
Publisher-游戏的出版者
NA_Sales -北美销售额(百万)
EU_Sales -欧洲销售额(百万)
JP_Sales -日本销售额(百万)
Other_Sales—世界其他地区销售额(百万)
Global_Sales—全球销售总额。
适用场景:电商、游戏销售,常规销售数据。
1.2明确分析思路
我们看到这些数据,到底有什么用呢,如何去分析呢?
首先明确目的:这批销售数据,我们用来干嘛,是分析游戏行业的发展趋势呢,还是分析各地区的销量,以及各游戏平台的发售情况等,这时需要结构化的去思考,去考虑,也就是数据分析最基础的部分。明确分析目的和思路,我们可以用思维导图的方式去思考。
目的:1.查看受欢迎的游戏类型、平台、发行商(前五名)
2.按地区,查看受欢迎的游戏类型、平台、发行商(前五名)
3.各地区销量变化趋势
4.各地区不同类型的游戏的销量变化趋势
好了接下来就让我们进行数据分析吧。
2.数据分析
2.1数据查看和清洗
import pandas as pd
import numpy as np
Sales_data = pd.read_csv('C:\\Users\\Administrator\\Desktop\\kaggle\\videogamesales\\vgsales.csv')
Sales_data.info()
Sales_data
通过查看,Year-游戏发行的年份,Publisher-游戏的出版者两个字段有缺失,那我们再来判断一下哪些有缺失的。
Sales_data.isnull().sum()
可以看到Year缺失271个,Publisher-游戏的出版者缺失58个。考虑到相对总体,缺失的值比较小,我们采取直接删除的方式。
Sales_data_new=Sales_data_new.dropna()
2.2数据分析
1.查看受欢迎的游戏类型、平台、发行商(前五名)
# 1.查看受欢迎的游戏类型、平台、发行商(前五名)
# 使用pandas数据透视表的功能:pivot_table()
# 获取游戏类型的排序
Genre_data = Sales_data_new.pivot_table(index = 'Genre',values='Global_Sales',aggfunc=np.sum).sort_values('Global_Sales',ascending=False)
# 获取平台类排序
Platform_data = Sales_data_new.pivot_table(index = 'Platform',values='Global_Sales',aggfunc=np.sum).sort_values('Global_Sales',ascending=False)
# 获取发行商类排序
Publisher_data = Sales_data_new.pivot_table(index = 'Publisher',values='Global_Sales',aggfunc=np.sum).sort_values('Global_Sales',ascending=False).iloc[0:15]
# 进行画图
fig,(ax1,ax2)=plt.subplots(1,2,figsize=(15,3))
Genre_data.plot.bar(color='r',ax=ax1)
Platform_data.plot.bar(ax=ax2)
Publisher_data.plot.bar()
Publisher_data
从图中我们可以看到动作类和运动类最受欢迎,还有PS2发行平台也是最受欢迎的发行平台。
同时也可以看出最受欢迎的发行商是Nintendo和Electronic Arts。
2.按地区,查看受欢迎的游戏类型、平台、发行商(前五名)
# 2.按地区,查看受欢迎的游戏类型、平台、发行商(前五名)
Genre_data_NA = Sales_data_new.pivot_table(index = ['Genre',],values='NA_Sales',aggfunc=np.sum).sort_values('NA_Sales',ascending=False)
Genre_data_EU = Sales_data_new.pivot_table(index = ['Genre',],values='EU_Sales',aggfunc=np.sum).sort_values('EU_Sales',ascending=False)
Genre_data_JP = Sales_data_new.pivot_table(index = ['Genre',],values='JP_Sales',aggfunc=np.sum).sort_values('JP_Sales',ascending=False)
Genre_data_Other = Sales_data_new.pivot_table(index = ['Genre',],values='Other_Sales',aggfunc=np.sum).sort_values('Other_Sales',ascending=False)
Genre_data_NA
# Genre_data_DF = pd.concat([Genre_data_NA,Genre_data_EU,Genre_data_JP,Genre_data_Other],axis = 1)
data=Genre_data_NA
Genre_name = data._stat_axis.values.tolist()
# explodes=[0.1,0.1,0.1,0.1]
plt.figure(figsize=(10,10))
plt.subplot(2,2,1)
plt.pie(x=Genre_data_NA,labels=Genre_name,autopct="%0.1f%%",shadow=True)
plt.title("北美地区的不同类型游戏销售额")
plt.subplot(2,2,2)
plt.pie(x=Genre_data_EU,labels=Genre_name,autopct="%0.1f%%",shadow=True)
plt.title("欧洲地区的不同类型游戏销售额")
plt.subplot(2,2,3)
plt.pie(x=Genre_data_JP,labels=Genre_name,autopct="%0.1f%%",shadow=True)
plt.title("日本地区的不同类型游戏销售额")
plt.subplot(2,2,4)
plt.pie(x=Genre_data_Other,labels=Genre_name,autopct="%0.1f%%",shadow=True)
plt.title("其它地区的不同类型游戏销售额")
plt.show()
可以看到在北美和欧洲地区最受欢迎的游戏类型是动作型,然后是运动型,但在日本最受欢迎的是角色扮演类。
3.各地区销售额变化趋势
通过对比知道,在1995-2008年之间增长迅速,在2008-2015以后迅速下滑。
转载:https://blog.csdn.net/qq_34069667/article/details/105700748