PUBG数据集分析报告
数据集分为两个部分
数据集1:
agg数据: 15 字段
- date: 时间
- game_size:队伍数量
- match_id:比赛
- match_mode: 对局模式(第一人称还是第三人称)
- party_size:组队模式(单人赛、双人赛、四人赛)
- player_assists:助攻次数
- player_dbno:击倒人数
- player_dist_ride:载具移动距离
- player_dist_walk:行走距离
- player_dmg:伤害数值
- player_kills:击杀人数
- player_name:玩家名称
- player_survive_time:玩家生存时间
- team_id:队伍id
- team_placement:队伍排名
数据集2:
kill dataset 12 字段
- killed_by:死亡方式
- killer_name:击杀者名字
- killer_placement:击杀者排名
- killer_position_x:击杀者位置x坐标
- killer_position_y:击杀者位置y坐标,
- map:地图
- match_id:比赛
- time:存活时间,
- victim_name:被击杀者名字
- victim_placement:被击杀者排名
- ictim_position_x:被击杀者位置x坐标
- victim_position_y:被击杀者位置y坐标
我们可以自由探索数据间的关系,发现一些有意思的现象
我想完成的目标:
- 击杀人数的分布情况
- 单变量分析: 击杀人数与排名, 组队模式与吃鸡
- 多变量间分析
- 落地成盒热点区域(存活时间小于180s)
- 最好用的枪械
- 战斗发生的距离分布
- 不同战斗距离中最好用的枪械
- 训练一个SVM预测是否能够吃鸡
及杀人数的分布情况
部分代码
导入数据 并处理丢失数据
agg = './pubg/agg0.csv'
kill = './pubg/kill0.csv'
agg_df = pd.read_csv(agg) # shape (13849287, 15)
kill_df = pd.read_csv(kill) # shape(13426348, 12)
agg_sub_df = agg_df[:1000000]
kill_sub_df = kill_df[:1000000]
agg_sub_deleted = agg_sub_df.dropna(axis=0)
kill_sub_deleted = kill_sub_df.dropna(axis=0)
agg_sub_deleted['player_kills'].describe() # 大部分人的击杀人数都是在1人和0人
count 998580.000000
mean 0.887166
std 1.555946
min 0.000000
25% 0.000000
50% 0.000000
75% 1.000000
max 62.000000
Name: player_kills, dtype: float64
单变量分析: 击杀人数与排名, 组队模式与吃鸡
# 查看击杀人数与排名的关系; 整体看,击杀人数超过10人可以排到前5名概率比较大, 40左右时有异常发生。
data = agg_sub_deleted[['player_kills', 'team_placement']]
sns.set(style="darkgrid")
g = sns.relplot(x="player_kills", y="team_placement",height=4,linewidth=2,