本文目录导读:

- 情况 1:基于 StatsBomb 360 数据(如
statsbombpy、kloppy) - 情况 2:基于 “OpenFootball” 或 “understat” 数据
- 情况 3:项目自带“战术面板”功能(如社区开源的
Soccer Action AI) - 🙋 如果你没有具体项目,只是想找现成代码
要回答这个问题,首先需要明确你指的是哪个开源项目。
因为“横传转移球”是足球数据分析中的高级指标,不同的开源项目(如 StatsBomb、 或 各种基于事件数据的分析库)对它的定义和统计方式完全不同。
为了给你最准确的答案,请先告诉我项目名称或仓库地址,我可以先根据市面上主流的几类开源足球分析项目,分情况说明它们是否以及如何统计“横传转移球”:
情况 1:基于 StatsBomb 360 数据(如 statsbombpy、kloppy)
- 是否有该数据? 有。
- 如何统计? StatsBomb 官方定义的指标叫 “Switch of Play(转移)”、“Passes to Final Third” 等。
- Switch of Play(转移球):指传球跨越了较大的横向距离(通常跨越中线或禁区宽度),且改变了进攻方向。
- 在
kloppy或statsbombpy中,你可以通过筛选pass事件,计算传球起终点坐标的X轴(横向)差值,如果差值大于某个阈值(25 米),且 Y 轴方向发生改变,即可视为横传转移。
- 注意:开源项目本身提供的是原始事件流,并不会直接给出一张“本场转移次数”的聚合图,这需要你自己用 Pandas 去算。
情况 2:基于 “OpenFootball” 或 “understat” 数据
- 是否有该数据? 没有直接的“转移”分类。
- 如何统计? 这些项目只提供基础的
x(横向)和y(纵向)坐标,通常的做法是写自定义函数:- 过滤出
type为Pass的数据。 - 计算
abs(start_x - end_x)(横向位移绝对值)。 - 如果横向位移 > 20 码/米,且纵向推进距离较小,且传球方向与整体进攻方向相反,就人工判定为“横传转移”。
- 过滤出
情况 3:项目自带“战术面板”功能(如社区开源的 Soccer Action AI)
- 是否有该数据? 取决于该项目的模型训练。
- 许多结合了计算机视觉(CV)的项目,会直接调用预置的“StatsBomb 事件库”,这种情况下输出结果中通常包含
switch_of_play字段,如果该字段为True,即为一次横传转移。
🙋 如果你没有具体项目,只是想找现成代码
你可以直接搜索 opensource football pass switch,比较热门的推荐是 Football-Analytics 系列仓库(国外博主 ersanyamarya 的项目),这个项目里有现成的函数,
def passes_between_zones(df, own_goal, opp_goal):
# 通常这叫 zone passes,里面会有一列专门标记 “Tempo” 或 “Switch”
请回复一下:
- 项目名字/链接是什么?
- 你使用的是哪种数据源(英超/欧洲杯等)?
我可以直接告诉你在那个项目里该调用哪个函数,或者修改哪个参数来统计出横传次数。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播