我目前正在通过比赛数据进行一些棒球比赛。我的表Outcomes
是
+------+----------+------------+-------+---------+---------+
| Date | HomeTeam | PlayNumber | AtBat | AtPitch | Outcome |
+------+----------+------------+-------+---------+---------+
|14/03 | HOU | 1 | HOU | TEX | SO |
+------+----------+------------+-------+---------+---------+
|14/03 | HOU | 2 | HOU | TEX | SO |
+------+----------+------------+-------+---------+---------+
|14/03 | HOU | 3 | HOU | TEX | GB OUT |
+------+----------+------------+-------+---------+---------+
|14/03 | HOU | 4 | TEX | HOU | HR |
+------+----------+------------+-------+---------+---------+
| ... | ... | ... | ... | ... | ... |
我还有一个表格InningScore
,每个Date
和HomeTeam
都有一个表格在每局之后得分。
+------+----------+--------+-------+------+
| Date | HomeTeam | Inning | AtBat | Runs |
+------+----------+--------+-------+------+
|14/03 | HOU | 1 | HOU | 0 |
+------+----------+--------+-------+------+
|14/03 | HOU | 1 | TEX | 1 |
+------+----------+--------+-------+------+
| ... | ... | ... | ... | ... |
我想要做的是创建一个包含Outcomes
中所有信息的表格,其中附加了一列,其中包含在一局TRSI
中得分的总分数,例如如果在一局中有3次得分,那局中的所有比赛将有TRSI = 3
。
这通常可以通过简单的连接来完成,但问题是Outcomes
中的播放没有一个局内引用。但是,可以通过观察AtBat
列何时更改来查找局的开始和结束位置。
在这种情况下,完成结果的最佳方法是什么?