先把队伍身份与阵营身份分成两层
在 CS2 的逐回合数据中,“甲队、乙队”是固定的队伍 ID,“T、CT”是该回合开始时的阵营。换边后,队伍 ID 通常不变,但阵营会改变。因此,不能看到某一回合由 CT 获胜,就直接把胜者记成乙队;正确做法是先读取该回合的队伍—阵营映射,再判断赢家属于哪支队伍。
本文所有回合均为假设的标注练习,只展示四个已经标明阵营的回合,不声称这是某场真实比赛的换边时点,也不把示例中的分段当作官方接口定义。记录时至少保留四个字段:回合编号、甲队阵营、乙队阵营、获胜阵营。若数据还提供赢家队伍 ID,则应再保存一列,用映射结果交叉核对。
四个假设回合的完整映射
| 回合 | 甲队阵营 | 乙队阵营 | 获胜阵营 |
|---|---|---|---|
| 第1回合 | T | CT | T |
| 第2回合 | T | CT | CT |
| 第3回合 | CT | T | CT |
| 第4回合 | CT | T | T |
第1、2回合中,甲队对应 T,乙队对应 CT。第3、4回合中,映射交换为甲队对应 CT、乙队对应 T。这里的“换边”只表示示例数据从前两回合的映射变成后两回合的映射,不能据此推断真实赛事中的换边发生在哪个时间点。
按每回合映射还原队伍胜负
第1回合的获胜阵营是 T,而该回合 T 对应甲队,所以第1回合甲队获胜。第2回合的获胜阵营是 CT,而 CT 对应乙队,因此第2回合乙队获胜。到第3回合,甲队已经是 CT;获胜阵营为 CT,所以第3回合仍然是甲队获胜。第4回合甲队是 CT、乙队是 T,获胜阵营为 T,因此第4回合由乙队获胜。
计算可以写成:
甲队胜场 = 第1回合 + 第3回合 = 1 + 1 = 2;
乙队胜场 = 第2回合 + 第4回合 = 1 + 1 = 2。
这个结果说明,不能把所有 CT 胜利都归给乙队。第2回合的 CT 胜属于乙队,但第3回合的 CT 胜属于甲队。阵营名称只是该回合的角色,不能替代固定的队伍 ID。
实用的标注顺序与核对方法
处理完整事件时,可以按以下顺序记录:先确认回合编号,再读取该回合的甲队和乙队阵营;接着读取获胜阵营;最后用“获胜阵营 = 哪支队伍当前阵营”的条件确定赢家队伍。若同时存在赢家队伍 ID,应检查它是否与映射推导出的队伍一致。这样即使换边前后阵营名称反复出现,也不会把 T 或 CT 当成固定队伍。
如果要汇总个人或队伍数据,也应先完成这一层归属。例如“甲队在 CT 方的胜场”不能通过全局搜索 CT 胜利来统计,而要筛选“甲队阵营 = CT 且获胜阵营 = CT”的回合。在本例中,该条件只命中第3回合;“乙队在 CT 方的胜场”则命中第2回合。
重赛、未知阵营与不完整记录应单独处理
重赛回合不应直接并入正常胜负统计。可以保留原始回合编号,并新增“重赛”标记;若最终有效回合有明确结果,只统计有效记录,原先被取消的记录另列。未知阵营也不能依靠前后回合猜测:当甲队或乙队阵营缺失、获胜阵营缺失,或两支队伍的映射无法确认时,应标记为“未知”,暂不计入甲队或乙队胜场。
因此,可靠的汇总至少应区分三类:有效且映射完整的回合、重赛或取消的回合、阵营或赢家未知的回合。只有第一类可以直接参与上述计算。若来源只给出阵营胜负、没有队伍 ID,也必须保留每个回合的映射表,不能用整张地图或整场比赛的固定印象替代逐回合判断。



