Rで散布図行列を書く方法
データを可視化するのに使える散布図行列を書く方法のメモです。
散布図行列とはこんな感じのものです。
このようにグラフの行列を作ります。
行列の右上部分が相関係数、左下部分が散布図、真ん中がヒストグラムと確率密度になっています。
グラフを作るにはpsychを使うのが簡単だと思います。
初回だけパッケージをインストール
install.packages(psych)
あとはこのようにすれば散布図行列を書いてくれます。
library(psych) d = read.csv(file="データ") pairs.panels(d,smooth=TRUE or FALSE, density=TRUE or FALSE, ellipses=TRUE or FALSE, scale=TRUE or FALSE, pch=".")
引数はこんな感じです。詳しくはこちら
# 散布図のプロット(斜体文字は任意指定のオプションで意味は以下のコメントを参照方)
# smooth : 平滑線の描画の有無(TRUEで描画)
# density : ヒストグラムでの密度カーブの描画の有無(TRUEで描画)
# ellipses : 散布図上での相関円の描画の有無(TRUEで描画)
# scale : 相関係数の文字の大きさを相関の強さで変えるか否か(TRUEで文字の大きさを変える)
# pch="." : サンプル数が多い場合に素早く描画する
参考ページ
pairs.panels() - (ソフトウェア品質技術者のための)データ分析勉強会
[はてな記法]ソースコードを色付けして表示する(シンタックスハイライト) - はてなブログ ヘルプ
今回はここまでです。
③三振を取れる投手は良い投手なのか(一般化マンテル検定)
盗塁は得点に影響しない?まさかの結果、、、
前回はに引き続き、何が得点に結びつくのか考えていきたいと思います。前回はこちらから
出塁率を高めることが得点を増やし、勝利につながることはわかりました。次は「ランナーを進める」ことが浮かぶと思います。進め方は打って進める、送りバントをする、盗塁する、エンドランをする、などがあると思いますが今回は盗塁について考えてみましょう。
なぜなら盗塁はアウトになるリスクが大きく、リスクに見合うだけの価値があるのか気になったからです。
まずプロ野球ではどのくらい盗塁に成功するのでしょうか?
2014年~2016年での盗塁成功率は約7割です(データ元:Baseball LAB)。
これはかなり高い数字ではないでしょうか。確率でいえば7割の確率で塁を1つ進めるのです。
しかし、これはプロ選手たちがキャッチャーの肩や自分の走力などを考えて、ある程度成功できるという確信があってのデータなので、むやみやたらに盗塁すると盗塁成功率はもっと下がってしまうかもしれません。
盗塁というのはそれくらい高いリスクの行為なのです。
盗塁のリスクの高さが分かったところで、一試合当たりの盗塁成功数の平均と得点の平均の散布図を見てみましょう。
前回の出塁率と比べるとどうでしょうか。前とは違いかなりばらつきがあります。これは「盗塁をたくさん決めても、得点には結びつかない」と考えることができます。
これではリスクを取って盗塁をたくさんしても、あまり効果はないのかもしれません。しかし、盗塁が高確率で成功するなら、より多くの点が取れるのではないでしょうか。
そこで、盗塁の成功率と得点の平均を比べてみましょう。
先ほどの盗塁数と比べた場合よりは得点が増えているかもしれませんが、盗塁成功率の場合でもそれほど変わりません。
つまり、「盗塁は成功率が高くても、得点には結びつかない」と考えられます。
考察
試合に勝つには盗塁の技術はあまり重要ではないようです。
前回やった出塁率の方が圧倒的に得点に結びつくので、試合に勝ちたい選手は盗塁よりも出塁率を高めるための練習をした方が成果が出ると思います。
今回の引用・参考
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
Twitterにて、更新状況をつぶやきます。
セイバーメトリクスについて考えてみます
— keih@野球選手のセイバーメトリクス (@bb_keih) October 27, 2016
質問・意見等はTwitterでお願いします。
点を取るには出塁しなきゃ始まらない
試合に勝つには得点を増やし失点を減らす必要があります。
今回は得点について考えてみましょう。
得点を挙げるのには様々な要素が考えられますが、普通は打率やホームランに目が行きがちです。
野球をやっていればヒットを打ちたい、長打を打ちたい、ホームランを打ちたいと誰もが考えていると思います。
しかし、本当にそれが重要なのでしょうか。
今回は選手があまり考えていない出塁について考えてみましょう。
これはプロ野球(2014年~2016年)のチーム出塁率と1試合当たりの得点の散布図です。
データ元:
なんとなく右肩上がりになっていませんか?
これに対して回帰直線と呼ばれる線を引いて見ましょう
さらに信頼区間を書いてみると
このようになります。この青い線と赤い線の間に全てのデータが含まれるようになっています。詳しくはいずれ書いていきます。
このグラフは「出塁率が上がれば、得点が上がる」ことを意味しています。
もう少しよく見てみましょう。出塁率が0.31から0.34に上がれば約1点得点が増えます。
1点増えるとどのくらいの試合に勝てるのでしょうか。
「」
どうでしょうか。ヒットやホームランを打てるようにならなくても出塁率を上げるのであれば四死球でもいいのです。そして四死球を増やすということは投手の球数を増やすことにもつながります。
つまり出塁率が上げることは得点を増やすのに大きな価値があるのです。2016年の日本ハムファイターズの西川選手を見てみるとよくわかると思うのでお勧めです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
Twitterやってます
セイバーメトリクスについて考えてみます
— keih@野球選手のセイバーメトリクス (@bb_keih) October 27, 2016
質問・意見etcはツイッターでよろしくお願いします。