偏相関係数を使って出場時間の影響を取り除いたスタッツ同士の関係を調べる

こんにちは、らんそうるいです。先日、「スタッツを眺めるwebアプリ2」をデプロイしました(https://rnsr0371.pythonanywhere.com/)。このアプリでは、スタッツ同士の相関係数や散布図を眺めることができます。

 しかし、スタッツ同士の関係を相関係数で眺めることには次のような問題があります。

スタッツの中には割合っぽいデータ(e.g.,eFG etc.)とそうでないデータ(e.g., PTS:得点、TR:総リバウンド etc.)があります。割合っぽくないデータは出場時間が長いほど値が高くなりやすいです。たとえば、出場時間が長いほど得点も総リバウンドも多くなります。ここで、出場時間を無視して相関係数を算出すると、得点も総リバウンドも片方が高くなればもう片方も高くなるように見えてしまう(出場時間が「第三の変数」として働いてしまう)ので、相関係数が高い値を取りやすくなります。これを回避するために、出場時間でパーシャルアウトした偏相関係数を算出し、表示させた方が良かったかもしれません。

バスケのスタッツを眺めるwebアプリ2を作成しました! (https://rnsr0371.boy.jp/2021/07/22/flask_stats/

 図で示すと下のようなパス図になります。

 このような「得点とリバウンドには強い相関関係が見られるけれど、これは両スタッツがともに出場時間を反映していることによって生じた疑似相関なのではないか」という疑問を持ったときに「得点とリバウンドの間に、その両スタッツと出場時間との相関関係だけでは説明できないような独自の関係があるか」を調べる指標として、偏相関係数という統計的な指標があるので紹介します。

偏相関係数の定義

自分の勉強も兼ねて、共分散→相関係数→偏相関係数という流れで数式を使って説明します。興味のない方は飛ばしていただいて大丈夫です。(数式エディタを導入したので数式が書きたいんです!)

2つの量的な変数$x$と$y$、たとえば得点とリバウンドの相関関係を表す指標の一つである共分散$s_{xy}$は次のように定義されます。

$$s_{xy}=\dfrac{1}{N}\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})$$

ここで、$N$はデータの個数、$\bar{x}$と$\bar{y}$はそれぞれ$x$と$y$の平均値です。2つの変数の関係が最大限強い時、共分散がどのような値を取るかを考えます。2つの変数の関係が最大限強い時とは$x_i=y_i$の時なので、共分散の式が書き換えられて、

$$s_{xx}=\dfrac{1}{N}\sum_{i=1}^{n}(x_i-\bar{x})(x_i-\bar{x})$$

$$=\dfrac{1}{N}\sum_{i=1}^{n}(x_i-\bar{x})^2$$

これは分散の定義式と同じなのですが、2つの変数の関係が最大限強い時は共分散は分散、つまり標準偏差の積$s_x s_x$と一致します。共分散の値を解釈するときに、共分散がとりうる最大の値すなわち2変数の標準偏差の積$s_x s_y$と、実際に得られた共分散の比をとったものが相関係数$r$です。

$$r=\dfrac{s_{xy}}{s_x s_y}$$

いよいよ偏相関係数の定義になります。変数$x_1$(出場時間)の影響を取り除いた時の、変数$x_2$(得点)と変数$x_3$(リバウンド)との偏相関係数を$r_{2 3|1}$とあらわすとすると、その値は、

$$r_{2 3|1}=\dfrac{r_{2 3}-r_{1 2}r_{1 3}}{\sqrt{1-r_{1 2}^2}\sqrt{1-r_{1 3}^2}}$$

によって求められます。ただし、$r_{1 2}$は出場時間と得点の相関係数、$r_{1 3}$は出場時間とリバウンドの相関係数、$r_{2 3}$は得点とリバウンドの相関係数です。

偏相関係数をパス図であらわすと次のようになります。得点から出場時間を影響を取り除いた成分を$x_2|x_1$、リバウンドから出場時間の影響を取り除いた成分を$x_3|x_1$とします。$x_2|x_1$は出場時間で得点を回帰した時の残差です。$x_3|x_1$は出場時間でリバウンドを回帰した時の残差です。

以上の説明は南風原(2002)を参考にしました。

スタッツ同士の相関係数と出場時間をパーシャルアウトした偏相関係数

生データ

生データとしてrintaromasuda様(https://github.com/rintaromasuda/bleaguer/tree/master/inst/extdata)のボックススコアのデータを用いました。

スタッツ同士の相関係数と偏相関係数

スタッツ同士の相関行列を示したのが下の図です。数値は相関係数で、マーカーは濃い青ほど相関が高いことを視覚的に表しています。注目してほしいのはMIN(出場時間)ですべての指標と正の相関関係があることが分かります。

 次に出場時間をパーシャルアウトした偏相関係数を示します。スタッツ同士の全ての組み合わせで偏相関係数を算出するのは大変なので、一部の組み合わせだけ計算しました。その結果が次の表です。得点とリバウンドの相関係数は0.84でしたが、偏相関係数は0.55となり、相関はやはり弱くなりました。リバウンドとアシストについては相関係数と偏相関係数で符号が逆転していて面白いですね。

得点リバウンドアシストターンオーバー
得点
リバウンド0.554
アシスト-0.025-0.283
ターンオーバー0.3990.1840.554

終わりに

偏相関係数を使うと、出場時間がスタッツに与える影響を取り除いて、2つのスタッツ同士の相関を調べられるよ! というお話でした。

参考文献

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA