はじめに
前回の記事では、投手ごとの球種割合、打者の左右別に投球コースを可視化するワークシートを作成しました。今回はその続きとして、投球日カレンダーのワークシートを紹介します。また、今回の目的やデータの概要などは前回の記事に記載しております!
[前回の記事はこちら]
⚙️ ワークシート作成の流れ
では、さっそく「登板日を可視化するワークシート」の作成手順を紹介していきます!
今回も、前々回の記事で作成した 「投手パラメーター」 を引き続き使用しています。
まだご覧になっていない方は、ぜひそちらもチェックしてみてください。
1. 週番号を作成
まずは、月 × 曜日のカレンダー形式で登板状況を表示するため、
日付がその月の第何週に属するかを求める計算フィールドを作成します。
名前:週番号
DATEPART('week',[Game Date])- { FIXED DATEPART("month",[Game Date]):MIN(DATEPART('week',[Game Date]))}
各部分の意味
-
DATEPART('week',[Game Date])- 日付
[Game Date]がその年の第何週かを返します。 - 例:2025年11月9日は第46週 →
DATEPART('week',[Game Date]) = 46
- 日付
-
{ FIXED DATEPART("month",[Game Date]): MIN(DATEPART('week',[Game Date])) }- LOD式で**「その月の最初の週番号」を取得**しています。
-
FIXED DATEPART("month",[Game Date])により月単位で固定集計され、
MIN(DATEPART('week',[Game Date]))によってその月の週番号の最小値(つまり第1週)を取得。 - 例:11月の最初の週は45週 → この部分は45を返す
-
引き算
DATEPART('week',[Game Date]) - 月の最初の週番号- 「月内での何週目か」を0スタートで計算します。
- 例:11月9日 →
46 - 45 = 1→ 11月の第2週(0スタートのインデックス1)
2.投球数を計算
次に、登板日ごとの投球数を算出します。
ここでは LOD表現を用いて、日付を日単位に丸めた上で投手ごとに集計を固定します。
名前:投球数
{ FIXED [Game Date],[Player Name]:COUNT([Player Name])}
これで、ワークシート作成に必要な準備ができたため、実際に作成をしていきます!
3.ワークシートの作成
-
列シェルフ:
曜日(Game Date) -
行シェルフ:
月(Game Date)週番号
※週番号はヘッダー表示のチェックを外しておくと見やすくなります。また、軸はデフォルトで上が正方向になりますが、カレンダーの見た目に合わせたいので、「軸の編集」→「反転」にチェックを入れて、下が第1週になるようにしています。 -
フィルターカード:
-
真偽(日本人投手)
「真」を選択し、コンテキストフィルターに設定
-
-
マークカード:
- マークタイプ:ガントチャート
- サイズ:
min(1) - ラベル:
日(Game Date) - 色:
投球数(灰色)
※ツールヒントには投球数のみを表示し、シンプルな見た目に整えます。また、サイズにmin(1) を使うことで、線が一定サイズのマークに変更されます。
まとめ
今回のステップでは、投手ごとの登板日と投球数を一覧で見える化しました。
特にポイントは次の3点です。
-
カレンダー形式で登板日を可視化
→DATEPART('weekday',[Game Date])やDATEPART('week',[Game Date])を使い、月間カレンダーを再現。 -
LOD表現で投球数を日単位に固定集計
→{ FIXED [Player Name], DATETRUNC('day',[Game Date]) : COUNT([Pitch ID]) } -
見た目をわかりやすく整理
→ 曜日や週番号で整列させ、日付セルごとに登板の有無・投球数を確認可能に。
→ カレンダー形式は、年間や月間の登板リズム・休養間隔の可視化にも有効。
次のステップでは、 これまで作成したものを活用して ダッシュボード を作成、紹介していきます!
