0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Tableauで野球分析】投球傾向を可視化してみた 〜1球単位データから投手の特徴を掴む〜(ワークシート作成編①)

Last updated at Posted at 2025-10-22

はじめに

データ分析、特にデータの可視化の領域に興味があり、Tableau を使って投球データの可視化に挑戦しています。 この記事では学んだことのアウトプットととして、「投手の投球傾向」をテーマに、1球単位の投球データを使って 「どんな球種をどれくらい投げているのか」「どのコースに多いのか」などを Tableau で可視化した過程を紹介します。

1つ1つの工程を記載していくと、長くなってしまうため、ワークシートごとに分けて紹介していきます。
実際に作成したものは、こちらから確認できます。
[Tableau Public]

🎯 目的

野球データを使って、投手ごとの投球傾向を可視化することを目的としました。
特に、Tableauの「LOD(レベルオブディテール)式」を使いながら、月、曜日ごとの登板状況や球種の配分、コース傾向を1つのダッシュボードで確認できるようにしています。

🧾データの概要

今回使用した主なデータには、以下のような項目です。
また、指標の解説は下記を参考にしました。
https://shinyorke.hatenablog.com/entry/statcast-csv-docs-ja

項目名 内容
game_date 試合日
player_name 投手名
stand 打席の左右
pitch_name 球種(例:ストレート、スライダーなど)
plate_x 捕手視点から見たホームベース到達時の水平座標
plate_z 捕手視点から見たホームベース到達時の垂直座標

⚙️ ワークシート作成の流れ

1. 投手パラメータの作成

まずは、分析対象となる投手を選択できるように、投手用のパラメータを作成します。
今回のデータには複数の投手の情報が含まれているため、特定の投手に絞って可視化できるようにすることが目的です。
今回は、大谷投手、山本投手、佐々木投手を選択できるようにしました。

パラメータの設定

  • パラメータ名:任意(例:日本人投手
  • データ型:整数型
  • 許容値:各投手に対応する整数値を設定(値:表示名 / 1:大谷翔平)

※今回のデータ量としては大きな影響はないと思いますが、パフォーマンス向上の練習として、文字列型ではなく、内部では整数型を持ち、ユーザーは文字列で認識できるパラメーターを作成しました。

パラメータとVizを連動させる計算フィールドの作成

パラメータを作成しただけでは、Vizには影響を与えないため、計算フィールドを作成してパラメータとVizが連動するようにします。

名前日本人投手番号

case [player_name]
WHEN "Ohtani, Shohei" then 1 
WHEN "Sasaki, Roki" then 2
WHEN "Yamamoto, Yoshinobu" then 3 
END

※今回は、case文を使用していますが、Tableauにおいては、CASE文は制約が少しあり、IF文の方が柔軟性は高いです。

名前真偽(日本人投手)

[日本人投手フラグ] = [日本人選手]

作成したフィルターはブール値となり、フィルターに入れることで、パラメータで選択した投手に応じてVizが更新されるようになります。

2. 球種割合メジャーの作成

次に、投手ごとの球種割合を作成します。球種割合はデータにはないため、計算フィールドを使用して作成します。1球単位のデータから、どの投手がどの球種をどれくらい投げているかを把握するために、TableauのLOD(Level of Detail)式を使います。

具体的には、以下の計算式を計算フィールドに作成します。
名前球種割合

{ FIXED [player_name], [pitch_name], [game_date]: COUNT([pitch_name]) }

これで、ワークシート作成に必要な準備ができたため、実際に作成をしていきます!

3. 球種割合ワークシートの作成

  • 列シェルフ合計(球種割合)

  • 行シェルフpitch_name(球種)

  • フィルターカード

    • 真偽(日本人投手)
      「真」を選択し、コンテキストフィルターに設定
  • マークカード

    • ラベル:合計(球種割合)
      • 簡易表計算で「合計に対する割合」、表(下)を選択
    • ラベル:合計(球種割合)
    • 色:灰色

image.png

まとめ

今回は、投手パラメータの作成から球種割合ワークシートの作成までを紹介しました。
ポイントとしては以下の通りです:

  • パラメータを使って特定の投手を選択できるようにした
  • 計算フィールドとパラメータを連動させることでVizが動的に更新されるようにした
  • LOD式を用いて、1球単位のデータから球種割合を正確に算出した

次回は、打者の左右別に投球場所を可視化するワークシートの作成方法について解説します。
もし、今回の手法でパフォーマンスを改善できる方法や計算フィールドなどより適した作成方法があれば、アドバイスやご指摘をいただけるとありがたいです!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?