本文目录导读:

我可以先为你科普一下PSxG(Post-Shot Expected Goals,射门后预期进球) 以及它在门将分析中的常见应用:
什么是PSxG?
- PSxG 是在射门发生后,基于射门的质量(如射门位置、角度、射门方式、是否被阻挡等)计算的进球概率。
- 它比xG(射门前预期进球)更精准,因为它包含了射门后的信息(比如球速、射门的方向是否刁钻)。
门将分析中如何使用PSxG?
在门将评估中,最常见的指标是:
- PSxG - Goals Conceded(失球数 - 预期失球数):如果门将失球数少于PSxG,说明他“扑出了”看似必进的球,表现优秀;反之则表现不佳。
- Save Percentage against PSxG(扑救成功率):用扑救次数除以(射正次数 - 进球数),再对比PSxG做校正。
如果你指的是某个特定的Python/R脚本:
请提供更多细节,
- 脚本是来自开源项目(如StatsBomb、Understat、FBref的爬虫)?
- 脚本是否包含数据抓取、数据处理,或者只是可视化?
- 你是想让它分析,还是想自己写一个?
很多开源足球分析脚本都会包含PSxG的计算或读取,因为StatsBomb和Opta等数据源都会提供这个字段,如果你的脚本没有,可能需要:
- 确认数据源是否包含PSxG列(如FBref的“PSxG”列)。
- 如果没有,可能需要自行用射门位置、角度、身体部位等特征训练模型或用已有的公开模型。
简单建议
如果你是在做门将表现分析,建议:
# 伪代码示例:计算“失球数 vs PSxG”差值 goalkeeper = df[df['player'] == '你的门将'] goals_conceded = goalkeeper['goals_conceded'].sum() psxg_total = goalkeeper['psxg'].sum() diff = psxg_total - goals_conceded # 正数表示预期丢球多于实际丢球,说明门将扑救出色
如果方便的话,直接把你的脚本核心代码或者它用到的数据源发给我,我能帮你判断它是否已经涵盖PSxG,或者教你如何加上这个功能,期待你的补充!