300億円欲しい

メジャーリーグのデータ解析します

メジャーリーグのデータ解析をしたい (投球テンポと援護率の関係とは)

野球の話です.

序論

「投球テンポが悪いから点が入らないんじゃ」
みたいな言説. ありますよね.

http://ohad.2chblog.jp/archives/30860233.html
投球テンポがいいと打線が援護してくれる風潮:非常識@なんJ
投球のテンポが悪いと何故援護がもらえないのですか。 - Yahoo!知恵袋


これって本当でしょうか.

本当に投球テンポと得点には関係があるのでしょうか.

調べました.

投球テンポと得点の関係とは

今回, 投球テンポを, 投球間隔と考えることにします.
ポンポン投げてくれる投手を, テンポが良い投手とします.

公開されているメジャーリーグのデータを使って調べます.

pitch f/x というシステムによって, 何時何分何秒にボールが投げられたか...が記録されています.
メジャーリーグのデータ解析をしたい (pitch f/xって何) - 300億円欲しい

例えば, 4月14日のヤンキース黒田は,

> head(kuroda_414$time)
[1] "20:06:21" "20:07:07" "20:07:22" "20:07:38" "20:07:58" "20:08:15"

1球目を現地時間の20時06分21秒に投げています.

これを利用して, 投球間隔を見てみましょう. 単位は秒です.

> head(pitching_rhythm(kuroda_414$time))
[1] 46 15 16 20 17 40

1球目と2球目の間は46秒でした.
このようにして, 投球の間隔がわかります.
この試合の黒田の投球間隔の平均は, 30.76秒でした.
投球間隔の分布は
f:id:gg_hatano:20140117164644p:plain
こんな感じでした.

ところで, 黒田はムエンゴ投手です. 黒田が投げていると, 味方は点をとってくれません.
この原因はどこにあるのか.
投球テンポが悪いからでしょうかね?

投球テンポと, 得点の関係を調べてみたいです.
2013年のメジャーリーグのデータを使って, 投球テンポとその試合の得点の関係を調べてみます.

手法

具体的な計算方法の説明です.
1. 平均投球間隔とその試合の援護点,
2. 投球間隔の分散とその試合の援護点
をRで計算してみます.

打線の援護を見るために援護率, という指標があります. この計算はとても難しいです.
援護率とは (エンゴリツとは) [単語記事] - ニコニコ大百科

今回は, 投手が登板した試合の最終得点を, その投手への援護点として見ています.
4月14日のヤンキースは3点とっているので, この試合の黒田への援護点は3です.

計算結果

投球テンポが悪いと打線の援護がもらえない, という仮説を立てましょう.
援護点別に, その試合に登板して50球以上投げた選手の平均投球間隔の分布を見ればいいと思います.

例えば, もらえた援護点が0だった投手について, 平均投球間隔を計算して, そのヒストグラムを作りました.
横軸が平均投球間隔. 縦軸が頻度です.
f:id:gg_hatano:20140117163118p:plain
こんな感じです. 27秒くらいのところに山の頂上があります.
これが, 味方が点をとってくれなかった投手の平均投球間隔です.

同じように, 援護点別に平均投球間隔のヒストグラムを作りました.
援護点が0点の場合のヒストグラムから, 援護点が8点の場合のヒストグラムまで, 合計9個あります.

テンポ良く投げると, 援護点が入る...のであれば,
援護点を増やしていくと, 分布の山が左に動いていくはず.
f:id:gg_hatano:20140117225825p:plain
あんまり変わりませんね...

テンポよく投げても援護点は変わらない, と言ってもいいのではないでしょうかね.

黒田の援護点と平均投球間隔

個人レベルではどうでしょうか.
黒田が登板した試合別に計算した投球間隔と援護点を調べてみました.

横軸がある試合の黒田の平均投球間隔で, 縦軸がその試合の援護点です.
f:id:gg_hatano:20140117225558p:plain
...
何か面白いことが言えそうな気配はありませんが, ちょっとこれ援護点が少なすぎませんかね.
メジャーリーグの1試合平均得点は4.2点程度です.
援護点が3点に以下の試合が多すぎませんか. かわいそうに.

黒田を助けるべく, さらなる分析が必要そうですね.

まとめ

投球間隔の長さと味方の援護率は関係がなさそうです.
投球間隔の分散については次回.

ソースコード


relation between pitching rhythm and assist score

やったこと.
時刻データの差をとって秒に変換して,
doBy::summaryByで投手と試合で分割してから平均を計算して,
試合結果のスコアが入ったデータフレームとplyr::joinして,
あとはggplotです.