遇见数据集

sports-trends-dataset

收藏
Hugging Face2026-06-29 更新2026-06-30 收录
官方服务:

资源简介:

Sports-Trends数据集是一个采用奖章湖架构的多体育项目比赛数据集,专注于足球、篮球、网球和板球比赛数据。它旨在为体育分析和机器学习研究提供防泄漏、可复现的数据骨干,每日自动更新。数据集遵循完整的medallion数据流水线:从不可变的原始数据摄取层(raw),经过清洗和标准化处理层(bronze/silver),最终形成机器学习就绪的黄金层(gold)。黄金层包含工程化的特征存储和按时间顺序划分的训练/验证/测试分割,所有特征均采用防泄漏方式计算(仅使用比赛日期前的历史数据)。核心特征包括Elo评分(自校正的队伍/选手实力)、近期表现(过去N场比赛的滚动表现)、历史交锋记录、休息天数(疲劳/赛程密集度)、主场优势(包括世界杯的中立场地处理)、联赛/锦标赛强度、阶段重要性(小组赛→淘汰赛→决赛的权重)以及社交关注度(用于排名,非核心结果)。预测标签为实际比赛结果(主场/平局/客场或按体育项目区分的双向结果)。数据集采用分区Parquet格式存储,按体育项目/日期/层级组织,并包括严格的时间顺序分割、自动化泄漏检查和模式验证等数据质量保障措施。更新频率为:每30分钟刷新实时/当日赛程和原始分区;每日更新推理窗口、重新生成的特征和次日预测;每周重建训练数据集以供模型重新训练。数据来源于免费体育API和公共领域数据源(如世界杯的OpenFootball数据),经标准化后形成通用模式。数据集结构、模式和工程特征采用MIT许可证,预期用于体育分析、机器学习研究、教育以及支持实时仪表板,但不提供投注建议。

Sports-Trends dataset is a multi-sport competition dataset based on the medallion lake architecture, focusing on football, basketball, tennis, and cricket match data. It aims to provide a leakage-proof and reproducible data backbone for sports analytics and machine learning research, with daily automatic updates. The dataset follows a complete medallion data pipeline: from an immutable raw data ingestion layer (raw), through cleaning and standardization layers (bronze/silver), to a machine learning-ready gold layer (gold). The gold layer includes engineered feature stores and chronologically partitioned train/validation/test splits, with all features computed in a leakage-proof manner (using only historical data before match dates). Core features include Elo ratings (self-correcting team/player strength), recent performance (rolling performance over past N matches), historical head-to-head records, rest days (fatigue/schedule density), home advantage (including neutral venue handling for events like the World Cup), league/tournament strength, stage importance (weights from group stage to knockout to final), and social attention (for ranking, not core outcomes). Prediction labels are actual match outcomes (home/draw/away or sport-specific two-way results). The dataset is stored in partitioned Parquet format, organized by sport/date/layer, with data quality assurances including strict chronological splits to ensure training data precedes validation and test data, automated leakage checks to validate feature/label separation and chronological order, and schema validation to ensure records comply with defined schemas. Update frequency is: every 30 minutes for real-time/todays schedules and raw partitions; daily updates for inference windows, regenerated features, and next-day predictions; and weekly rebuilding of training datasets for model retraining. Data sources include free sports APIs and public domain sources (e.g., OpenFootball data for the World Cup), standardized into a common schema. The dataset structure, schemas, and engineered features are licensed under MIT, intended for sports analytics, machine learning research, education, and supporting real-time dashboards, with an explicit disclaimer against providing betting advice.

创建时间:
2026-06-28
原始信息汇总

数据集概述

Sports-Trends 数据集 是一个持续更新的、基于“奖章架构”(medallion-architecture)的多运动赛事数据湖,旨在提供无数据泄露(leakage-safe)且可复现的数据,用于体育分析、机器学习研究和教育。该数据集覆盖足球、篮球、网球和板球四类运动。

数据架构(奖章布局)

数据集按运动项目、日期和层级进行分区,结构如下:

  • Raw(原始层)raw/<sport>/provider=<p>/date=YYYY-MM-DD/fixtures.json
    • 只追加、不可变,保留从源API获取的完整溯源。
  • Bronze(青铜层) / Silver(白银层)
    • 清理和标准化数据,统一为单一规范模式,包含稳定ID和去重复。
  • Gold(黄金层)
    • 特征存储gold/features/<feature>/sport=<sport>/date=.../part.parquet
    • 训练/验证/测试数据集gold/training/<sport>/{train,validation,test}.parquet,按时间顺序划分,无数据泄露。
    • 推理输入gold/inference/tomorrow/date=YYYY-MM-DD/inference_input.parquet
  • 质量报告quality/{leakage_report,schema_validation,...}.json
  • 版本管理registry/{dataset_manifest,latest_versions}.json

内置特征(黄金层)

所有特征均以无数据泄露的方式计算,仅使用比赛日期之前的匹配数据:

特征名称 描述
Elo评分 自我修正的球队/选手实力评估,每场比赛后更新。
近期状态 过去N场比赛的滚动表现。
历史交手 双方历史交锋记录。
休息天数 疲劳度/赛程密集度。
主场优势 场地效应,包括世界杯中主办国和中性场地的处理。
联赛/赛事强度 比赛级别的上下文权重。
阶段重要性 从小组赛到决赛的权重设定。
社交关注度 人气信号(用于排名,非核心结果预测)。

预测标签:每场比赛的实际结果(主队胜/平/客队胜,或按运动项目的二元结果)。

数据质量与防止数据泄露

  • 时间顺序划分:训练数据严格按时间顺序排列,训练集早于验证集,验证集早于测试集,不进行时间边界的随机打乱。
  • 数据泄露断言:自动化检查(quality/leakage_report.json)验证特征与标签的独立性及时间顺序;回归测试通过模拟未来大比分比赛来确认赛前特征不变。
  • 模式验证:记录依据规范模式进行验证(quality/schema_validation.json)。
  • 版本化清单registry/dataset_manifest.json 记录版本、时间戳、覆盖的运动、层级及质量统计。

数据加载示例

使用 pandashuggingface_hub 加载足球训练分割:

python import pandas as pd from huggingface_hub import hf_hub_download

REPO = "ruslanmv/sports-trends-dataset" train = pd.read_parquet(hf_hub_download(REPO, "gold/training/football/train.parquet", repo_type="dataset"))

或使用 datasets 库流式加载:

python from datasets import load_dataset ds = load_dataset("ruslanmv/sports-trends-dataset", data_files="gold/training/football/*.parquet")

更新频率

频率 更新内容
每30分钟 实时/今日赛程及原始分区。
每日 推理窗口、重新生成的特征、明日预测。
每周 重建训练数据集,用于模型重新训练。

所有更新通过 GitHub Actions 自动运行。

数据来源、许可与预期用途

  • 数据来源:聚合自免费的体育API和公共领域数据(如OpenFootball的世界杯数据),并规范为通用模式。原始分区保留数据提供者溯源。
  • 许可协议:MIT许可,涵盖本数据集的结构、模式和工程特征。请尊重底层上游数据提供者的条款。
  • 预期用途:体育分析、机器学习研究、教育,以及驱动 ruslanmv.com/sports-trends 仪表板。
  • 非投资建议:仅供信息和娱乐。

引用

bibtex @dataset{magana_sports_trends_dataset_2026, author = {Ruslan Magana Vsevolodovna}, title = {Sports-Trends: A leakage-safe multi-sport match data lake}, year = {2026}, url = {https://huggingface.co/datasets/ruslanmv/sports-trends-dataset}, note = {Live dashboard: https://ruslanmv.com/sports-trends/} }

补充信息

  • 语言:英语
  • 许可证:MIT
  • 数据规模:10K < 样本数 < 100K
  • 任务类别:表格分类
  • 标签:体育、体育分析、足球、篮球、网球、板球、Elo评分、特征存储、Parquet、奖章架构
搜集汇总
数据集介绍
sports-trends-dataset 数据集图片
构建方式
Sports-Trends数据集基于勋章架构(Medallion Architecture)构建,涵盖足球、篮球、网球和板球四个运动项目。数据从公开API和公共领域数据源(如OpenFootball)持续摄取,以不可变方式存入Raw层,保留完整来源追溯。随后经Bronze和Silver层进行清理与标准化,统一为规范模式,执行去重与稳定ID分配。在Gold层中,工程化特征以泄漏安全方式计算——仅使用比赛日期之前的过往数据,构建了Elo评分、近期状态、历史对战、休息天数、主场优势、联赛强度、比赛阶段重要性及社交关注度等八类特征。最终形成按运动和时间顺序划分的训练、验证与测试数据集,存储为分区的Parquet格式。
特点
该数据集的核心优势在于其严格的时间序列分割与泄漏预防机制。训练集、验证集和测试集按时间先后顺序自然划分,杜绝跨时间边界的随机打乱,确保特征与标签之间无未来信息泄露。自动化的数据质量检查持续运行,包括泄漏报告、模式验证和版本清单,后者记录数据集版本、时间戳、覆盖的运动项目及质量统计。此外,数据集以每30分钟、每日和每周的固定周期自动更新,原始数据仅追加不修改,充分保障数据完整性与可复现性。
使用方法
用户可通过Hugging Face Hub便捷加载数据。使用pandas库时,调用hf_hub_download函数下载指定运动项目的训练Parquet文件,例如足球训练集,随后用pd.read_parquet直接读取为DataFrame。若需流式处理,借助datasets库的load_dataset函数通配加载Gold层所有Parquet文件。数据集以运动项目、日期和层级进行分区存储,避免单一大文件带来的读取瓶颈,适合用于体育分析、机器学习研究、教育及驱动实时仪表盘等场景,但明确声明不适用于博彩建议。
背景与挑战
背景概述
体育赛事数据分析是机器学习和数据科学领域的重要应用方向,旨在从海量历史对阵中提取可泛化的模式以预测比赛结果。2026年,由Ruslan Magana Vsevolodovna创建的sports-trends-dataset应运而生,该数据集基于medallion架构(原始层→青铜层→银层→金层)构建,覆盖足球、篮球、网球和板球四大运动项目,并每日通过GitHub Actions自动更新。其核心研究问题聚焦于如何在不引入数据泄露的前提下,为多运动项目提供可复现的、时序安全的机器学习训练数据。作为Sports-Trends智能系统的数据基石,该数据集通过Elo评分、近期状态、历史交锋、休息天数等工程化特征,显著提升了运动预测模型的鲁棒性与可解释性,对体育分析领域的开源数据集标准化产生了深远影响。
当前挑战
该数据集旨在攻克两大关键挑战。领域层面,传统体育数据集常因忽视时序依赖而引发数据泄露,导致模型泛化性能虚假高估;同时,跨运动项目间的数据格式、计分规则与特征含义高度异构,严重阻碍了统一建模框架的建立。构建过程中,需从多个免费体育API及公共领域数据源(如OpenFootball)实时抽取原始数据,确保原始层的不变性及可溯源性的同时,完成跨源数据的去重、标准化与规范化;此外,所有特征(如Elo评分与近期状态)必须严格基于比赛时间戳之前的赛果计算,并通过自动化质量报告(如leakage_report.json)验证特征与标签的时序不重叠性,从而保证训练/验证/测试切分的严格时序分离与数据泄漏防御。
常用场景
经典使用场景
在体育分析领域,Sports-Trends数据集为多项目赛事预测提供了经典基准。研究者可基于其金牌层的工程化特征存储,直接加载按时间划分的训练、验证与测试集,构建足球、篮球、网球和板球等项目的比赛结果预测模型。数据集采用分层的湖仓一体架构,从原始摄入到特征工程均经过严格防泄漏处理,确保模型训练中的时间序列完整性,使其成为时序预测与体育竞技分析的理想实验平台。
解决学术问题
该数据集有效解决了体育预测中常见的数据泄露与特征时序混淆问题。通过强制按日期分割样本并自动校验特征与标签的时间隔离性,它消除了信息从未来流入过去的风险,为赛事结果预测、球队实力动态建模以及赛程疲劳效应研究提供了可靠的数据基础。其公开的标准化流程与质量报告,推动了体育分析领域的可重复性研究,使不同工作之间的比较更具科学严谨性。
衍生相关工作
围绕Sports-Trends数据集,衍生出了一系列高质量的开源工作,包括配套的模型仓库与持续集成训练流水线。研究者在此基础上延伸了多运动项目的迁移学习策略,将足球领域的特征工程迁移至篮球或网球分析中。此外,其湖仓一体架构与自动化质量检测流程,为其他领域(如金融时序、气候预测)构建同类开源数据集提供了可复用的设计模式与工程示范。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务