CRAN Task View: Sports Analyticsについて、機械翻訳を交えて日本語化し掲載しております。

Maintainer: Benjamin S. Baumer, Quang Nguyen, Gregory J. Matthews
Contact: ben.baumer at gmail.com
Version: 2023-04-06
URL: https://CRAN.R-project.org/view=SportsAnalytics
Source: https://github.com/cran-task-views/SportsAnalytics/
Contributions: このタスクビューに対する提案や改良は、GitHubのissueやpull request、またはメンテナのアドレスに電子メールで送ってください。詳しくはContributing guideをご覧ください。
Installation: このタスクビューのパッケージは、ctvパッケージを使用して自動的にインストールすることができます。例えば、ctv::install.views(“SportsAnalytics”, coreOnly = TRUE)は全てのコアパッケージをインストールし、ctv::update.views(“SportsAnalytics”)はまだインストールしていない全てのパッケージと最新のものをインストールします。詳しくはCRAN Task View Initiativeを参照してください。

このCRAN Task Viewには、スポーツ分析に役立つパッケージのリストが含まれています。ほとんどのパッケージはスポーツに特化しており、そのようにグループ化されています。しかし、スポーツ分析に関連する補助的な機能を提供するパッケージ(例えば、チームをテーマにしたカラーパレット)のためのGeneralセクションや、統計モデリングに有用なパッケージのためのModelingセクションも含まれています。タスクビュー全体を通して、また最後の関連リンクセクションに、これらのパッケージのいくつかを実質的な方法で使用している厳選された書籍や記事のリストを掲載しました。このリストを作成する目的は、研究者がRで仕事を完成させるために必要なツールを見つける手助けをすることです。

パッケージに含めるには、パッケージがスポーツ分析の実施に役立つ必要があります。 ほとんどのパッケージは、次の組み合わせに対する機能を提供します。

  • 特定のスポーツまたはリーグのデータを取得
  • スポーツ固有のデータに対して一般的な計算を実行

eスポーツとスポーツ賭博パッケージは範囲内です。

パッケージのリストは非常に包括的です。CRANに見逃しているスポーツ分析パッケージがある場合は、お知らせください。貢献はいつでも歓迎されており、奨励されています。詳細については、リンクされたGitHubリポジトリを参照してください。

スポーツ専用パッケージ

アメリカンフットボール

  • nflverseは、NFL データを取得および分析するためのパッケージのコレクションです。
  • nflfastRは、1999年から現在までのNFLのプレイ・バイ・プレイ・データを効率的にスクレイピングする関数が含まれています。
    • nflscrapRと似ていますが、より高速です。
    • nflfastRに必要なモデルはすべてfastrmodelsにホストされています。
  • nflreadrは、計算済みのnflfastRデータフレームを含むnflverseプロジェクトのGitHubリポジトリからデータを効率的にダウンロードします。
  • nfl4thは、ナショナル フットボール リーグにおける最適なフォース ダウンの決定を計算する関数で構成されています。
    • 4thダウンに関するデータは、NFLESPNから収集されています。
  • nflseedRは、複雑なNFLタイブレーク ルールに基づいてNFLチームをランク付けする関数が含まれています。これには、ディビジョンランキング、プレーオフのシード順、ドラフト順が含まれます。
  • nflplotRは、ggplot2でのNFLデータの視覚化を容易にする関数が含まれています。
  • NFLSimulatoRは、プレーとドライブをシミュレーションし、さらにNFLのゲーム内戦略を評価するためのツールで構成されています。
  • fflrは、ESPNファンタジー フットボールAPIからESPNの生のファンタジー・フットボール・データにアクセスし、生のデータをフォーマットする機能を提供します。
  • ffscraprは、一貫したインターフェイスと組み込みの認証、レート制限、キャッシュを使用して、MFL、Sleeper、ESPN、Fleaflicker などのさまざまなファンタジー・フットボールAPIにアクセスするのに役立ちます。
  • ffsimulatorを使用すると、ユーザーはブートストラップ・リサンプリングを使用してファンタジー・フットボール・シーズンをシミュレートできます。シミュレーションは、過去のランキングとnflfastRのデータに基づいています。さらに、最適なラインナップを計算し、結果を集計する機能も提供します。
  • gsisdecoderは、nflfastRと組み合わせて使用するためにNFLプレーヤーIDをデコードする関数が含まれています。
  • cfbfastRは、collegefootballdata.comからカレッジ・フットボールのプレーバイプレー・データにアクセスするための機能を提供します。

サッカー協会

  • worldfootballRは、FBrefTransfermarktの移籍データと評価データ、Understatfotmobの撮影場所データなど、多くの人気サイトからクリーンで整理されたサッカー データを提供します。
  • ヨーロッパのサッカー データは、engsoccerdata (archived)を通じて入手できます。これには、1871 年に遡るイングランドおよびその他のヨーロッパのサッカー リーグの試合結果が含まれています。
  • socceRは、サッカーの試合やトーナメントの予想を評価したり、結果をシミュレーションしたりする機能を提供します。
  • ggsoccerは、ggplot2でサッカー イベント データを視覚化するための関数を提供します。
  • footballpenaltiesBLは、1963-64~2016-17年のGerman Men’s Bundesligaのペナルティキックを分析するためのデータとプロット関数が含まれています。
  • footBayesは、ハミルトニアン・モンテカルロ法およびスタンを使用した最尤推定アプローチを通じて、広く知られているサッカーモデル(二重ポアソン、二変量ポアソン、スケラム、スチューデントのt)をフィッティングするための関数で構成されています。このパッケージには、チームの強みを視覚化し、試合結果を予測するためのツールも提供されます。
  • itscalledsoccerにより、American Soccer Analysis app APIを介してアメリカン・サッカー (MLS、NWSL、および USL) データにアクセスできるようになります。
  • FPLdataは、Fantasy Premier Leagueの選手属性を取得するための関数が含まれています。
  • EUfootballは、2010~2011年から2019~2020年までのイングランド、フランス、ドイツ、イタリア、スペイン、オランダ、トルコのトップ リーグのヨーロッパ サッカーの試合結果を提供します。

オーストラリアン・ルール・フットボール

  • fitzRoyは、オーストラリアン・フットボール・リーグ(AFL)のデータをスクレイピングして処理するためのパッケージです。

野球

  • 過去の野球データは、1871年に遡るメジャー リーグ・ベースボールのシーズン・レベルのデータを含むLahmanを通じて入手できます。
  • retrosheetを使用すると、Retrosheet.orgからゲーム ログ、チームID、名簿、プレイバイプレイやその他のファイルをダウンロードし、結果をデータ フレームとして返すことが容易になります。ローカル・キャッシュを使用して効率を向上させることができます。返される実況データはイベント ファイルから直接取得され、解析されないことに注意してください(つまり、Chadwickはバンドルされていません)。
  • pitchRxは、Major League Baseball Advanced Media APIを通じてピッチレベルのデータへのアクセスを提供します。このパッケージは、Marchi, M.、Albert, J.、Baumer, B.S. (2018) で大きく取り上げられています。Analyzing baseball data with R (doi:10.1201/9781351107099)。 パッケージの詳細については、Sievert, C. (2014) を参照してください。 Taming PITCHf/x Data with XML2R and pitchRx (doi:10.32614/RJ-2014-001)。
  • mlbstatsは、従来の野球統計とセイバーメトリクスの両方の多くの野球統計をベクトルベースで計算するための関数を提供します。
  • baseballDBRは、dplyrのバックエンド データベース機能を利用して、Lahmanに含まれるデータをミラーリングするローカル・データベースを構築します。
    • mlbstatsと同様に、野球の統計を計算する関数も含まれていますが、ベクトルではなくデータ フレームを使用します。
  • baseballrは、Baseball ReferenceFanGraphsBaseball Savantなどのさまざまなソースから野球データを抽出して分析するための機能で構成されます。

バスケットボール

  • BAwiRは、データのスクレイピングと視覚化に重点を置いて、バスケットボール データを分析するためのツールのコレクションです。
  • AdvancedBasketballStatsは、プレーヤー、チーム、ラインナップ(クインテット)、およびプレーのバスケットボール統計を計算および分析する機能を提供します。
    • uncmbbは、1949~1950年シーズン以降のノースカロライナ大学(チャペルヒル校)男子バスケットボールの結果に関するデータが含まれています。
  • BasketballAnalyzeRは、書籍Basketball Data Science With Applications in Rに付属しています。このパッケージには、バスケットボールのデータを分析・可視化するためのデータと関数が含まれています。
  • NBAloveRは、バスケットボール・リファレンスAPIからバスケットボール・データにアクセスするためのRインターフェイスです。このパッケージには、バスケットボールのデータ分析を支援する機能も含まれています。
  • wehoopは、ESPN APIから女子大学バスケットボールとWNBAのデータにアクセスするための機能を提供します。
  • hoopRは、ESPNNBA Stats APIKen Pomeroy’s college basketball ratingsなど、さまざまなソースから男子カレッジ バスケットボールとNBAのデータにアクセスするための機能で構成されています。

チェス

  • chessは、python-chessを中心としたRの独自のラッパーです。ゲームボードのPGN filesとSVGを読み書きします。
  • stockfish (archived)は、UCIオープン通信プロトコルを実装しており、C++で書かれた人気のあるオープンソースの強力なチェス・エンジンであるStockfishが付属しています。
  • chessと同様に、bigchessは、PGNファイルの読み取りと書き込みを行います。 そして、stockfish (archived)と同様に、bigchessはUCIチェス・エンジンにAPIを提供します。bigchessは、RAMにコピーせずに複数のゲーム ファイルを一度に読み取ることもできます。
  • rchessは、チェスの検証、駒の移動、小切手の検出、およびチェス盤のプロットのための機能を提供します。

クリケット

  • yorkrは、Cricsheetデータに基づいてクリケット選手やチームの統計を分析する機能を提供します。
  • cricketrは、ESPN Cricinfo Statsguruデータに基づいてプレーヤーやチームのクリケットのパフォーマンスを分析するためのツールのコレクションです。
  • cricketdataは、ESPNCricinfoCricsheetという2つの主要なソースから国際的なクリケット データを取得する関数が含まれています。
  • howzatRは、さまざまなクリケット統計を計算するための関数で構成されています。

eスポーツ

  • CSGoは、Steam APIからCounter-Strike Global Offensiveデータを収集します。
  • rbedrockは、Minecraft(Bedrock Edition)のデータ分析と管理をサポートします。
  • ROpenDotaopendotaRおよび RDota2は、OpenDotaおよび Steam APIからDota2データを抽出します。

GPS追跡

  • trackeRtrackeRappは、R内のGPS対応追跡デバイスからのランニング、サイクリング、水泳データを分析するためのツールを提供します。これら2つのパッケージを使用すると、ユーザーはワークアウトや競技からのデータを整理して探索できます。
  • rStravaは、Strava APIから Stravaアクティビティ データにアクセスする関数が含まれています。
  • 追跡データを処理および分析するためのツールの詳細な概要は、Tracking CRANタスク ビューで確認できます。

ホッケー

  • NHLDataは、1917年に遡るNHLゲームのスコアが含まれています。データは一度に1シーズンごとに保存され、特定のシーズン中のすべての試合のスコアが含まれます。
  • NHL APIによって公開されるデータへのアクセスは、nhlapiおよびnhlscrapeによって提供されます。
  • fastRhockeyは、NHLおよびプレミア ホッケー連盟(PHF)(以前はナショナル・ウィメンズ・ホッケー リーグ(NWHL)として知られていました)にAPIラッパーを提供します。

ソフトボール

  • runexpは、ソフトボールで得点されたランを推定するためのメソッドを提供します。
    • 特に、runexpは、離散マルコフ連鎖を使用した理論的な期待値と、多項ランダム・シミュレーションを使用した経験的分布を中心にしています。

水泳

  • SwimmeRは、水泳結果をさまざまな形式で読み取り、結果をきちんとしたデータ フレームで返します。また、ショートコースヤード(SCY)、ショートコースメーター(SCM)、ロングコースメーター(LCM)間のタイムを変換する機能も含まれています。

陸上競技場

バレーボール

一般

  • teamcolorsは、さまざまなスポーツやリーグのプロチームにカラーパレット、ggplot2テーマ、xaringanテーマ、ロゴを提供します。
  • colorrは、EPL、MLB、NBA、NHL、NFLのプロスポーツチームのカラーパレットが含まれています。
  • nbapalettesは、NBAチームのジャージの色からインスピレーションを得たカラー パレットが含まれています。
  • sleeperapiは、ファンタジー・スポーツ向けにSleeper APIからデータを収集するための機能を提供します。
  • sportyRは、ルールブックの仕様に従ってスポーツ競技面のggplot2表現を作成するための関数が含まれています。これは、プレーヤーの追跡データをプロットする場合に特に役立ちます。
  • SportsTourは、ノックアウト方式とラウンドロビン方式を使用してトーナメントの試合結果を表示する機能を提供します。
  • TouRnamentは、1)結果に基づいたリーグ表の作成と、2)リーグの試合スケジュールの作成の2つの機能で構成されます。
  • injurytoolsは、スポーツ傷害を分析、視覚化、およびモデル化するための機能を提供します。

モデリング

スポーツ分析におけるモデリングのための様々な関数が、Rの基本パッケージで利用可能です(lm()やglm()など)。さらに、Bayesian、MachineLearning、Robust、Spatial、SpatioTemporalなどの他のCRAN Task Viewsには、統計的手法をスポーツに適用するための適切なパッケージが含まれている可能性があります。

賭け

  • oddsapiRは、The Odds APIからスポーツのオッズにアクセスするためのツールを提供します。
  • odds.converterは、米国のオッズ、香港のオッズ、10進オッズ、インドネシアのオッズ、マレーシアのオッズ、生の確率などの一般的なスポーツ賭博のオッズ タイプを変換するための関数を提供します。
  • impliedは、さまざまなアルゴリズムに基づいて、ブックメーカーのオッズと確率の間で変換する関数のコレクションです。
  • pinnacle.dataは、2016MLBシーズンのすべての賭けラインのデータセットによって強調表示されたPinnacleマーケット オッズが含まれています。
  • RKellyは、賭けのKelly criterionを計算し、マルチレッグ コンテストの結果の確率を計算する関数を提供します。

評価

R言語 CRAN Task View:スポーツ分析