【发布时间】:2023-03-17 15:15:01
【问题描述】:
我有一个游戏数据集,我观察一个玩家的点数。
da = data.frame(points = c(144,186,220,410,433))
da
points
1 144
2 186
3 220
4 410
5 433
我现在也知道玩家所在的关卡,因为我知道不同关卡的积分范围。
ranges = data.frame(level = c(1,2,3,4,5), points_from = c(0,100,200,300,430), points_to = c(100,170,300,430,550))
ranges
level points_from points_to
1 1 0 100
2 2 100 170
3 3 200 300
4 4 300 430
5 5 430 550
现在我想计算一个新变量,它表示玩家离下一个关卡有多远。由该特定级别的 da$points/ranges$points_to 计算得出。
例如,如果玩家有144分,达到170分达到下一个等级,则等级进度为144/170。
因此,我想要的数据集如下所示:
da_new = data.frame(points = c(144,186,220,410,433), points_to = c(170,300,300,430,550), level_progress = c(144/170,186/300,220/300,410/430,433/550))
da_new
points points_to level_progress
1 144 170 0.8471
2 186 300 0.6200
3 220 300 0.7333
4 410 430 0.9535
5 433 550 0.7873
我现在如何计算这个变量?
【问题讨论】:
-
你怎么知道186在哪一关?范围从 100-170 到 200-300