一、项目概览
此次项目数据来源于玩家电竞,是国内知名的电竞数据网站,包含LPL春季赛到2020年3月15号为止的比赛数据。链接:https://www.wanplus.com/lol/teamstats
- 分析目的
对比分析各战队的各项数据,得出影响胜率的主要因素。
二、理解数据
利用requests包,fake_useragent包,json包,xlwx包www.wanplus.com/lol/teamstats 爬取3月15日的比赛数据,输出整理后如下如图:
美化:
列属性分别为:
A列:名次,LPL参赛队伍排名
B列:战队,LPL参赛队伍名次
C列:KDA,是杀人(Kill)死亡(Death)助攻(Assist)按照一定比率来算的一个数值
D列:场均击杀,每场击杀对手英雄的数量
E列:场均死亡,每场被对手击杀的次数
F列:每分钟伤害,平均每分钟对对手造成的伤害
G列:一血率,游戏中拿一血的占比
H列:场均时长,每场游戏的时间
I列:场均经济,每场游戏的经济
J列:每分钟经济,平均每分钟的经济
K列:每分钟补刀,补刀是指英雄在敌方小兵在残血剩最后一下攻击就死亡的情况下,利用自身的普攻或者技能伤害来收取这个小兵的人头然后获取经验和金币。
L列:场均小龙,平均每场控制小龙的数量
M列:小龙控制率,控制游戏中的小龙的频率
N列:场均大龙,平均每场控制大龙的数量
O列:大龙控制率,控制游戏中的大龙的频率
P列:每分钟插眼,插眼就是可以把眼放在一片战争迷雾,可以短时间内看到那片区域的动
Q列:每分钟排眼,排眼就是利用道具可以看到对方插的眼,然后可以进行排除。
R列:排眼效率,排除对手插的眼的效率
S列:场均推塔数,平均每场推掉对手的塔数
T列:场均被推塔数,平均每场被对手推掉的塔数
U列:胜场,胜利的场次
V列:负场,失败的场次
三、数据清洗
1、缺失值处理
无缺失值
2、异常值处理
无异常值
3、数据类型转换
将数值有百分比形式转换为浮点数形式,便于后续的计算和比较
备注:G列的一血率,M列的小龙控制率,O列的大龙控制率,R列的排眼效率
将时间数据由字符型数据转换成以秒为单位的数值型数据
备注:H列的场均时长
数据转换前:
数据转换后:
4、数据归一化
数据归一化的概念
数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。
数据归一化的方法
min-max标准化(Min-Max Normalization)
也称为离差标准化,是对原始数据的线性变换,使结果值映射到[0 - 1]之间。转换函数如下:
其中max为样本数据的最大值,min为样本数据的最小值。这种方法有个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。
Z-score标准化方法
这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,转化函数为:
其中
为所有样本数据的均值,
为所有样本数据的标准差。
本分析的数据归一化
备注:采用min-max标准化方法对除列名词,B列战队外的列进行归一化
归一化前:
归一化后:
四、数据分析
1、对比分析
为了更好地直观地对比各个战队在不同游戏指标中的情况,我们绘制了柱状图,曲线图和散点图。
KDA对比分析
横坐标为不同战队的排名,纵坐标为战队的各自KDA
从KDA的对比图中,我们可以直观地看到前两名战队的实力均匀,第5名至10名的实力均匀,第12名至第16名的实力均匀
场均击杀对比分析