使用Google Colab对DotA玩家数据集进行特征工程和聚类分析

使用Google Colab对DotA玩家数据集进行特征工程和聚类分析

本次使用的DotA数据集中主要包括了以下变量:
numCols = [‘GamesPlayed’, ‘GamesWon’, ‘GamesLeft’, ‘Ditches’, ‘Points’, ‘Kills’,
‘KillsPerMin’, ‘Deaths’, ‘Assists’, ‘CreepsKilled’, ‘CreepsDenied’, ‘NeutralsKilled’,
‘TowersDestroyed’, ‘RaxsDestroyed’, ‘TotalTime’]

变量相关性分析

请添加图片描述可以看出大多数变量都与 GamesPlayed 相关,因为它们是在多场比赛中计算的事件。 例如,你玩的游戏越多,赢得的游戏次数 (GamesWon) 就会越高! KillsPerMin 与 GamesPlayed 无关。 因为每分钟的击杀数并不会因为玩家玩游戏次数的增加而增加,所以一般是由玩家的技能等级和选择的英雄来决定的。

用PCA提取特征

PCA是一种简化数据集的技术。它是一个线性变换。这个变换把数据变换到一个新的坐标系统中,使得任何数据投影的第一大方差在第一个坐标(称为第一主成分)上,第二大方差在第二个坐标(第二主成分)上,依次类推。主成分分析经常用于减少数据集的维数,同时保持数据集的对方差贡献最大的特征。
请添加图片描述从表格可以看出应该保留 3 个主要成分。我们也可以保留更多主要成分, 但是包含太多主成分会导致过度拟合,从而损害模型泛化能力。
对于PC1:该组件描述了玩家在游戏中的基本表现,杀小兵、杀英雄、推塔和兵营等方面的表现是否出色。数值越高代表玩家击杀对手和积累的效率越高 资源来赢得比赛。
对于PC2:这个组件主要描述了玩家的技能水平和他喜欢选择的英雄的定位。 如果玩家的技能等级高,每分钟的击杀数也会增加。 如果玩家选择更多的ADC或APC,他们的每分钟击杀数也会增加。
对于PC3:该分量主要描述玩家是否认真对待游戏,较高的值表示玩家抗压能力较弱,经常退出游戏。

用K-Means分析球员的情况

K-Means聚类算法是一种迭代求解的聚类分析算法,其步骤是,预将数据分为K组,则随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。
请添加图片描述
请添加图片描述
用肘法判断,k取3比较合适。
Cluster 1 :表现出色的选手:该集群包含与玩过、赢过和离开的游戏相关的变量,以及杀戮、助攻、杀死的小兵、拒绝的小兵、杀死的中立者、摧毁的塔和摧毁的 raxs。 这些变量是玩家在游戏中表现的指标。
Cluster 2 :杀手:该集群包含一个变量 - KillsPerMin。 它与 PC2 有很强的相关性,PC2 主要衡量玩游戏的数量。 这个集群可能代表了一群在游戏中更具侵略性并且倾向于在单位时间内杀死更多的玩家。
Cluster 3 :休闲玩家:这个集群主要关心 GamesLeft,这意味着玩家玩游戏是为了乐趣或作为一种社交活动,对获得更高的排名积分不感兴趣。

玩家数据的平均指标

使用原始数据,经过计算后得出平均指标,例如:胜率、每局游戏击杀数,每局游戏死亡数等等。请添加图片描述

对平均数据指标重复PCA分析

请添加图片描述
从结果表中可以看出,保留前三个主成分可以在保留原始数据大部分信息的同时,达到更好的降维效果。
对于 PC1:该组件与 WinRate、KillsPerGame、AssistsPerGame 和 PointsPerGame 负相关,与 DeathsPerGame、CreepsKilledPerGame 和 TowersDestroyedPerGame 正相关。 这意味着 PC1 可能代表玩家的综合技能。 PC1 值高的玩家往往在游戏中表现良好,而 PC1 值低的玩家可能表现不佳。
对于 PC2:与其他指标相比,该主成分与 CreepsKilledPerGame 和CreepsDeniedPerGame 的系数更大。 这意味着PC2可能代表了一个与击杀小兵相关的指标,PC2值越高的玩家对小兵线的控制力可能越强。
对于 PC3:该主成分的系数表明它与 DeathsPerGame、AssistsPerGame 和 CreepsKilledPerGame 呈正相关,与 KillsPerGame 和 TowersDestroyedPerGame 呈负相关。 这意味着PC3可能代表了一种以生存和辅助为主的游戏风格,而PC3值较高的玩家可能擅长这种软辅助。

用平均数据指标的特征重复提取K-Means聚类

请添加图片描述
请添加图片描述
用肘法判断,k取3比较合适。
Cluster 1 :经验丰富的玩家
该集群包含在 PC1b 和 PC2b 中得分较高的玩家,表明他们是表现较好的玩家,他们擅长游戏技巧和小兵线的控制。 他们可能是经验丰富的玩家,他们花了很多时间玩游戏并且已经发展出较高水平的技术。
Cluster 2:辅助玩家
该集群包含在 PC3b 中得分较高的玩家,表明他们具有独特的战术风格,侧重于支援队友,并且死亡次数较少。 他们可能是专注于游戏中特定策略或角色的玩家,有较大可能是软辅玩家。
Cluster 3:休闲玩家
该集群包含所有主成分得分较低的玩家,表明他们是不经常玩游戏或不参加比赛的休闲玩家。 他们可能是出于娱乐或社交活动而玩游戏的玩家,对提升技术不感兴趣。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值