【发布时间】:2016-04-05 14:48:03
【问题描述】:
我目前有两个单独的数据框,摘录如下:
我的数据
Player TG% Pts Team Opp Yr Rd Grnd
John 56 42 A 1 2015 1 Grnd1
James 94 64 B 2 2015 1 Grnd2
Jerry 85 78 C 3 2015 1 Grnd3
Daniel 97 51 D 4 2015 1 Grnd4
John 89 61 A 1 2015 1 Grnd2
James 65 26 B 4 2015 1 Grnd3
Jerry 73 34 C 3 2015 1 Grnd2
Daniel 73 40 D 2 2015 1 Grnd2
John 89 26 A 1 2015 1 Grnd3
James 92 42 B 3 2015 1 Grnd1
Jerry 89 25 C 2 2015 1 Grnd2
Daniel 80 41 D 4 2015 1 Grnd2
John 73 82 A 3 2015 1 Grnd3
James 73 41 B 4 2015 1 Grnd3
Jerry 89 76 C 2 2015 1 Grnd1
Daniel 91 77 D 1 2015 1 Grnd2
圆形
Team Opp Grnd
A 1 Grnd1
B 3 Grnd4
C 4 Grnd2
D 2 Grnd3
我想要做的是操纵它,以便按照下面的方式生成第二个数据框
Player Gms Avg.Pts Avg.Last3 Avg.v.Opp Avg.@.Grnd
John
James
Jerry
Daniel
我知道如何在 Excel 中执行此操作,但是我在 R 中苦苦挣扎
Gms - 每个玩家的游戏总数(excel 将是 countif)
Avg.Pts - 这是每个玩家姓名的平均 Pts(excel 将是 averageif)
Avg.Last3 - 这是每个玩家在最近 3 场比赛中的平均得分,请注意,数据帧与最近的比赛在数据帧末尾是按顺序排列的。
Avg.v.Opp - 这是数据框回合中定义的每个玩家对抗下一个对手的平均得分。例如,John 为 A 队效力,他的下一个对手是 Opp 1。(excel 将是averageifs)
Avg.@.Grnd - 这是数据帧回合中定义的每个玩家在下一个场地的平均得分。例如,John 为 A 队效力,他的下一场比赛在 Grnd1 举行。 (excel将是averageifs)
我尝试过使用 dplyr 和许多其他选项,但似乎还没有成功地将现阶段可用的东西组合在一起。请注意,mydata 数据帧的行数超过 10,000 行。
【问题讨论】: