2017年10月28日土曜日

野球のランナー、アウト状況における変化の概観2: いろいろなゾーンの変化

# 野球のランナー、アウト状況における変化の概観2: いろいろなゾーンの変化

前回はMLB 00-16においてアウト (0-2の3通り) + ランナー状況 (2^3の8通り)に関して、全体的な打席結果がどう変化しているかを見ました。特に1塁が空いていて、2, 3塁にランナーがいるような状況で四球/打数と三振/打席などが変化している傾向がありそうでした。

今回はこれらの状況でいくつかのゾーンに変化が見られるかどうか調べてみます。データはMLB 2015-2017のものを使っています (Statcast, MLBAM)。

調べたゾーンは以下です。
1. 投球のコース
2. 投球のうち、打球になったもののコース
3. 打者のスイング傾向
4. 審判のストライクゾーン

とりあえず、いくつかの状況についてゾーンを図でざっくり確認していきます。状況としては"000 0" (ランナーなし、ノーアウト)、"001 0" (ランナー3塁、ノーアウト)、 "001 1" (ランナー3塁、1アウト)、"011 1" (ランナー2 + 3塁、1アウト) について調べました。後ろの3つの状況は、打席結果の変化が大きかった状況から適当に選んでいます。

すべてのデータは右打者のものだけを使っており、ピッチアウトや敬遠などの故意にボールにした球は除いています。問題として、ランナー、アウトの24状況にわけているので、特に珍しい状況に関してサンプル数があまり多くなく、また、逆にサンプルが非常に多い場合も計算時間の関係で数を少なめにサンプリングしているので、あくまで目安という感じで見てください (注1)。

下の図では実際の投球を利用して、どの位置にどれぐらいの数の投球が投げられるかを推定し、同じ推定値の点をつないで等高線が引かれています。
図1. いくつかの状況における投球密度。
紫の枠はおおまかなストライクゾーンを示す (注2)。

基本的には等高線内が濃い黒で示されているほど、そのゾーンに多くの投球があったことを示しています。密度が十分に低い領域では等高線は書かれておらず、代わりに各投球のコースが点でプロットされています。"000 0" では右打者の外角低めに特に黒い領域があり、積極的にストライクゾーンに投げていることが伺えます。

例として示した他の状態では、"000 0"で見られるほど濃い黒の領域が見られず、投球が散らばっている可能性がありそうです。高低の目安として、緑の破線で"000 0" の濃い黒の領域の下辺りの高さを示していますが、他の状態でも比較的密度が高い領域はそのちょうど上辺りにあり、投球の高さはそれほど変わっていないかもしれません。
"001 0" (ランナー3塁、ノーアウト) では投球が少し内角寄りになっています。ただし、状況自体が少ないので正確さが足りないだけかもしれません。

下の図では打球になった投球の密度を同様に等高線で示しています。
図2. いくつかの状況における打球になった投球の密度。

打球になった投球だけを同じように示しても、全体的に狭いことを除くと、全投球データとだいたい似たような傾向、といったところのようです。

次に、打者のスイング傾向を等高線で示します。
図3. いくつかの状況における打者のスイング傾向。
状況の違いは、線の種類の違いで示されている (図の右参照)。

ここでの等高線は、各状態で打者が50%の確率でスイングする領域の周縁です (注3)。ランナーがいる状態では、50%スイングゾーンはかなり広くなっています。打者は、ランナー状態によってかなりスイング傾向を変えている可能性がありそうです。

等高線を引くスイング確率を変えても傾向は似たような結果になっています。

図3-2. いくつかの状況における打者のスイング傾向2。

審判がストライクと判断するゾーンのサイズも調べてみました 。
ストライクゾーンは既にランナー状態などで変化することが知られています。
J. Roegele. The Living Strike Zone, Baseball Prospectus (2013).
https://www.baseballprospectus.com/news/article/21262/baseball-proguestus-the-living-strike-zone/

図4. いくつかの状況における審判のストライク判定の傾向。
打者のスイングゾーンほどではないですが、ランナーがいることで変化しているようです。上の記事で書かれているように、ランナーがいることでゾーンが狭くなる傾向がありそうです。

いくつかの状態について図で示してきましたが、これでは全体的な傾向を掴めないので、定量化します。各状態について、等高線内の面積を測ってみました (注5)。ゾーンの位置 (高低/内外) や形状の変化はわかりませんが、だいたいの傾向を見るのには十分ではないかと思います。

下は、ピッチアウトなどを除いた投球の50%が含まれると推定された等高線のサイズを示しています。
図5. 各ランナー、アウト状況における投球のゾーン面積。
左の列 (Base) はランナーの状態を、一番上の行の0, 1, 2はアウトカウントを示す。

基本的にランナーがいるとゾーンは広くなるようです。また、1塁が空いて、2 and/or 3塁にいるときに広く、特に3塁にランナーによって広くなるようです。アウトカウントは影響はそれほど大きくなさそうでしょうか。

ゾーンのサイズと、投球がストライクゾーン内であったかどうかの関係を調べるため、投球がおおまかなストライクゾーン内だったかどうかの比率も計算してみました (打者がスイングしたものも含めている)。
図5-2. 各ランナー、アウト状況における投球コースのストライク/(ストライク + ボール) 比率。

図5で投球コース面積が広い状況では、当然、ストライク/ボール比は下がっているようです。

次に、打球になった投球だけの50%等高線の面積を求めると以下のようになりました。
図6. 各ランナー、アウト状況における、打球となった投球のゾーン面積。
左の列 (Base) はランナーの状態を、一番上の行の0, 1, 2はアウトカウントを示す。

面積は随分狭くなりましたが、傾向としては全投球の結果と似ているようですが、こちらでは2アウトではゾーンは狭くなっているかもしれません。

下は50%以上の確率でスイングする部分を描く等高線の面積です。
図7. 各ランナー、アウト状況における打者の50%スイングゾーンの面積。
投球コースと同様、基本的にランナーがいるとゾーンは広くなるようです。特に、1塁が空いていると、埋まっている状態より広そうです。

また、スイングゾーンは、アウトカウントからも影響が大きいことがわかります。特に3塁にランナーがいる時に顕著ですが、0 or 1アウトで積極的にゾーンを広げているようです。とにかくバットに当てて、フライでもゴロでも本塁に返せるように、という打者の意図が強く表れているのかもしれません。2アウトで打球になった投球のゾーンが狭くなるのは、打者のスイング傾向の影響がありそうです。

図6に関して、打球になった投球が2アウトで狭くなっているかもしれない、と書きましたが、打者のスイングゾーンが狭くなることで、投球全体のコースはアウトカウントで変化していなくても、打球になった投球のコースが変化している可能性がありそうです。

全体的な傾向としては投球のゾーンが広いときには、野手のスイングするゾーンも広くなっているようです。これが、投球が広いからスイングゾーンが広いのか、スイングゾーンが広いから投球が広いのか、はよくわかりませんが、両方の影響があると考えるのが自然かもしれません。ただ、2アウトでは一部の状況で野手のスイングゾーンはかなり狭くなっているのに、それに応じて投手側が狭くしている傾向はあったとしてもかなり小さいようです。

審判のストライクゾーンの等高線内のサイズも変化しています。
図8. 各ランナー、アウト状況における審判のストライク判定50%ゾーンの面積。

ランナーがいると全体的に狭くなっていますが、特に1塁が空いて、2 and/or 3塁にいるときに、すこし狭くなっているかもしれません。また、アウトカウントが2になると少し広くなっているかもしれません (注6)。

という感じでゾーンの変化を見てきました。次回は、ゾーン変化や打席結果変化の関係を調べてみます。
ぱっと見ただけでも、各ゾーンの変化の間には正や負の相関が強くありそうで、それぞれのゾーンの変化の影響を個別に評価するのは不可能そうです…

<参考>
Statcast
https://www.mlb.com

Marchi and Albert, Analyzing Baseball Data with R, 2013, CRC press.

J. Roegele. The Living Strike Zone, Baseball Prospectus (2013).
https://www.baseballprospectus.com/news/article/21262/baseball-proguestus-the-living-strike-zone/

B. Mills, Rethinking 'loess' for Binomial-Response Pitch F/X Strike Zone Maps.
http://princeofslides.blogspot.jp/2010/12/rethinking-loess-for-binomial-response.html

Bill petti, baseballr.
https://billpetti.github.io/baseballr/

How to estimate the area of 95% contour of a kde object from ks R package.
https://stackoverflow.com/questions/25940726/how-to-estimate-the-area-of-95-contour-of-a-kde-object-from-ks-r-package
______________________________________________________________________
注1.
PITCHf/xなら2008年 (一部2007も) からあるので、そっちを使うべきだったかもしれません (PITCHf/xデータは操作がちょっと面倒なのでStatcastでやってしまった)。審判のストライクゾーン自体が少しずつ変化しているはずなので、あまり長い期間でまとめてしまうと変なことになる可能性もありますが。データの取得、計算、描画は基本的にRで行っています。データの取得はbaseballrパッケージを利用。

注2.
ウチの作図ではストライクゾーンのサイズは、Marchi and Albertに従っており、横は-0.95から0.95で、縦は1.6から3.5で書いています。少なくとも横はプレート+ボールの直径という感じです。縦は平均的なサイズの打者の場合で、こちらも多分ボールのサイズが入っている?

注3.
打者のスイング傾向と審判のストライクゾーンに関しては、可視化・サイズの計算は、Rのloess関数を使って局所重み付け回帰してsmoothingしたデータを使って、contourLines関数で等高線を計算しています。この辺の手順はMarchi and Albertに従っています (loessでspanは指定してない)。また、投球が10,000より多い時は、10,000球をランダムサンプリングして使用してます。

ところで、この手のゾーンデータではパラメータの選択で結構見た目が変わるとか、原理的にはgam (一般化加法モデル) を使ったほうがいいんでないかと言うような話があるようです。
http://princeofslides.blogspot.jp/2010/12/rethinking-loess-for-binomial-response.html
同じ方法で出された結果同士の相対的な比較としては、どっちでも多分そんなに変わらないと思いますが、形状や数値なんかは、ここで示したものはあまり信用しない方が良いかもしれないです。
上のようなsmoothing処理を使わずにx (横), z (縦) 平面を、-1.2 < x < 0.1かつ2 < z < 4 の範囲 (右打者内角高めあたり) で、0.1フィート x 0.1フィート (約3 cm四方) ずつのグリッドにして、グリッド毎のストライク/ボール率を直接計算すると、こんな感じ。

図9. 狭いゾーン毎のストライク/ボール判定率。
ここでは全状況を合わせた結果を示しています。

左の列がz方向のグリッドの中心の値を、列名がx方向の中心値を示しています。赤の破線は、横方向が-0.9、縦方向が3.6という、だいたいストライクゾーン (+ボール1個分) の境界ぐらいのあたりを示しています。

本文で示した等高線図も少なくとも近似としては悪くなさそう?

注4.
比較のため、いくつかのボール/ストライクカウント (BS count) でのスイング傾向の変化も示します。
図10. いくつかのボール/ストライクカウントにおける打者のスイング傾向。

当たり前ですが、追い込まれるとかなり広い範囲をスイングするようになるようです。1ストライクではボールカウントはそこまで大きな影響は無さそうです。図3、図3-2、図7で見た、ランナー/アウト状況の変化によるスイングゾーンの変化は、各状況において発生しやすいカウントが違うことによる可能性もあるかもしれません (例えば、K/ABが高い状況では追い込まれている頻度も高い可能性がある)。
状況毎のカウントを揃えるために、カウント1-1だけに絞った50%スイングゾーンサイズを計算してみました。

図7-2. 各ランナー、アウト状況における、カウント1-1での50%スイングゾーンの面積。

下は図7. 各ランナー、アウト状況における打者の50%スイングゾーンの面積。比較のため再掲。

基本的にはだいたい似た傾向のように見え、状況の違い自体の影響が大きそうです。ただ、2アウトでは図7-2ではランナーの有無によって生じた変化がさらに小さくなっているような印象もあり、カウントも影響もそれなりにあることを示唆しているかもしれません。

注5.
投球のゾーンに関しては、kde関数を使って密度推定して、contourLinesで等高線を計算。下を参考にしました。
https://stackoverflow.com/questions/25940726/how-to-estimate-the-area-of-95-contour-of-a-kde-object-from-ks-r-package

注6.
本文中で引用したJ. RoegeleのBPの記事によると、2アウトほどではないですが1アウトでも広がっているようです。こちらはランナー状況を細かく分けていて、こちらの図を見ると、サンプル数が違う各状況が等しい影響があるように評価してしまうのが良くないかもしれません。アウトの影響をざっくり見る方法としては向こうの記事のほうが、サンプルも稼げて推定も正確でしょうし、重み付けも公平になるので、基本的に良い方法だとおもいます。ただし、向こうの記事だと、アウトカウントごとのランナー状況の違いが考慮されていないので、それが影響する可能性も無くはないです。

0 件のコメント:

コメントを投稿