ラベル Shiny の投稿を表示しています。 すべての投稿を表示
ラベル Shiny の投稿を表示しています。 すべての投稿を表示

2017年10月14日土曜日

2軍成績の割に1軍での出番が少ない選手を探せるshiny app

2軍成績の割に1軍での出番が少ない選手を探せるshiny appを公開してみました。
https://snin-17.shinyapps.io/shine_on_your_hidden_players_app/

機能としては以下の通りです。

1.
過去2年間の2軍成績のいくつかのパラメータを範囲選択して選手を選べる。
パラメータの一つとして
Diff = 2軍での出場機会 (PA or IP) - 1軍での出場機会
を作っています。

2.
選んだ選手と全選手の二年間の各指標を、箱ひげ図と点でプロットして、選んだ選手の2軍全体や、所属チーム2軍での位置を確認できる。

3.
選んだ選手の1軍、 2軍での2012年以後の各年度の成績を見られる。

ルール5ドラフトごっこにでもどうぞ。

動画にしてみました。動画ではわかりにくいですが、プロットでは範囲選択で選んだ選手は赤のドットで示されています。画面は開発中のものです。





ついでに1軍と2軍成績比較の方も多少UIを変えました。
https://snin-17.shinyapps.io/farm_stats_app/

タブで指標を選んでいましたが、1つのページに全て並べるようにしました。描画がだいぶ遅くなりますが、ぼんやり眺めるのにはこっちのほうがいいかなと。


<参考>
https://www.shinyapps.io
http://d.hatena.ne.jp/hoxo_m/20151222/p1
J. Lander, Chapter 29 Interactive Dashborads with Shiney (in R for Everyone, 2nd edition), 2017, Pearson Education, Inc.

2017年9月23日土曜日

アプリの成績計算の補足

公開するより先に書いとけよ、という案件ですが (いくつかミスに気づけたはず)。

先週公開したshinyアプリにおける成績計算の補足です。

プロ野球個人成績 1, 2軍比較 with Shiny
https://snin-17.shinyapps.io/farm_stats_app/

ツイッターにも書きましたが、年度間の重み付け平均を取る時にwOBAとBABIP/DERの重み付けをミスっていたのを修正しました。結果的にはほとんど変わってないはずですが、反省します。

DERについて。
失策が考慮に入っていないのはデフォルトのページに書きましたが、記述が足りないようでした。データ取得 ~ 指標計算用のコードは結構昔に書いたものを流用していて、失策が入ってないのは覚えてたんですが、見直すと他にも書いといた方が良さそうなものがありました。
NPB公式の投手成績にはあまり細かい成績はありません。
http://npb.jp/bis/2017/stats/idp1_c.html
計算としては分母は対戦打者数から引けるだけ引いて、
  (H - HR) / (TBF - BB - IBB - HBP - K - HR)
見ての通り、失策だけでなく犠打などが考慮に入っていません。おそらく、このデータセットの中で選手間の相対的な比較をする分にははそれほど問題ないはずですが、少し投手タイプごとのバイアスも発生しているはずです。具体的には、GB率 (失策の発生しやすさと少し関連するはず) や、その投手がランナーを貯めやすいかどうか、あたりが原因になりうると思います。

wOBAについて。
投手成績と同じく、NPB公式には打撃成績
http://npb.jp/bis/2017/stats/idb1_c.html
にも失策出塁がありません。
wOBAの計算に関して、Refタブで引用していた1.02 http://1point02.jp/op/gnav/glossary/discription/dis_bs_woba.html
では失策出塁への係数も書かれていますが、当然それはこのアプリの計算では考慮していません。
FGの計算式
http://www.fangraphs.com/library/offense/woba/
では失策出塁は無視しても良さそうだったので (注1)、書かなくてもいいかと思ってたんですが、wOBAを導入したThe Book (pp. 30) を見直してみたら失策出塁も入っていました。確かに計算できるなら考慮した方が自然な気がします。

というわけで、DERは選手間で比較する分にはたぶんそんなに問題ない、wOBAは概ね整合しているぐらいの感じだと思います。個人の趣味でやっている事ということで、大目に見てやってください。

<注>
注1. ちゃんと考えると、この場合FGは失策を無視した後にスケールを合わせているので、失策を考慮してスケールを合わせている1.02から失策を除くのは全く違うことですが。

<参考>
Tango, Lichtman, and Dolphin, The Book , 2007, Potomac Books.

2017年9月16日土曜日

プロ野球個人成績 1, 2軍比較 with Shiny

NPB2012年以後の選手のいくつかの種類の通算個人成績を、1軍成績と2軍成績に関してプロットするShinyアプリを公開してみました。
https://snin-17.shinyapps.io/farm_stats_app/
プロットする対象の選手を決めるPA/TBFの閾値を変化させて、プロットがどう変わるかを見ることができます。ソースがNPB公式なので、わりと単純なstatsだけです。

Shinyの練習でつくったみたんですが、ウェブブラウザ上でRの関数の作図が動くのは結構おもしろい。

公開も非常に簡単だけど、無料だと月に25時間しか動かせない (default設定だと誰かがアクセスするとrunning状態になって、アクセスが切れると15分後にsleeping状態に移行)らしいので、ある程度ちゃんとやるなら金を払うか、自分でサーバ設定するとかしないと駄目のようです。

<参考>
https://www.shinyapps.io
http://d.hatena.ne.jp/hoxo_m/20151222/p1