この記事では、「共分散」の意味や公式をわかりやすく解説していきます。
混同しやすい相関係数との違いも簡単に紹介していくので、ぜひこの記事を通してマスターしてくださいね!
目次
共分散とは?
共分散とは、\(\bf{2}\) 組の対応するデータの関係を表す値です。
共分散の大きさ・符号を調べることで、「年齢」と「骨密度」のような \(2\) 変量データに関連があるかを探ることができます。
共分散は「\(2\) つの変数の偏差の積の平均値」として定義されます。
共分散の記号
共分散は、「\(\sigma_{xy}\)」「\(s_{xy}\)」「\(\mathrm{Cov}(X, Y)\)」などの記号で表されます。
- \(\sigma_{xy}\):母集団の共分散
- \(s_{xy}\):標本の共分散
- \(\mathrm{Cov}(X, Y)\):確率変数 \(X\), \(Y\) の共分散
データの分析の問題では「\(s_{xy}\)」を、確率分布の問題では「\(\mathrm{Cov}(X, Y)\)」を見ることが多いでしょう。
母集団は「対象となるすべての集合」、標本は「母集団から選び出した部分集合」のことを指します。
例えば、日本人の意識調査という統計においては、母集団は「日本人全員」、標本は「アンケート回答者」といった例が挙がります。
統計調査において母集団全体のデータを集めるのはなかなか難しいので、「標本」を扱うことが多いです。
共分散の公式
共分散は、次の \(2\) 通りの公式で求められます。
【公式①】偏差の積の平均
\(1\) つ目は、定義どおりの公式です。
共分散を \(s_{xy}\)、\(2\) 組の対応するデータの値を \(x_1\), \(x_2\), \(\cdots\), \(x_n\) と \(y_1\), \(y_2\), \(\cdots\), \(y_n\) とし、それぞれの平均値を \(\overline{x}\), \(\overline{y}\) とすると、
\begin{align}\color{red}{s_{xy} = \displaystyle \frac{1}{n} \{(x_1 − \overline{x})(y_1 − \overline{y}) + (x_2 − \overline{x})(y_2 − \overline{y}) + \cdots + (x_n − \overline{x})(y_n − \overline{y})\}}\end{align}
(見切れる場合は横へスクロール)
【公式②】(積の平均) − (平均の積)
また、共分散は \(2\) つの変数の「(積の平均値) − (平均値の積)」でも求められます。
共分散を \(s_{xy}\)、\(2\) 組の対応するデータの値を \(x\), \(y\) とし、それぞれの平均値を \(\overline{x}\), \(\overline{y}\)、それぞれの積の平均値を \(\overline{xy}\) とすると、
\begin{align}\color{red}{s_{xy} = \overline{xy} − \overline{x} \cdot \overline{y}}\end{align}
公式②の方がやや計算が楽になります。
どちらの公式も覚えておくと、どちらかのど忘れに対応できたり、検算できたりするので、できれば覚えておきましょう!
共分散の意味
共分散を調べると、\(2\) 組のデータがどのような関係にあるかがわかります。
共分散が正のとき、\(2\) 組のデータには「正の相関」があり、一方の値が増えると、もう一方の値も増える関係にあります。
逆に、共分散が負のとき、\(2\) 組のデータには「負の相関」があり、一方の値が増えると、もう一方の値は減る関係にあります。
この傾向は共分散の絶対値が大きいほど顕著で、共分散が \(0\) に近ければ両者にはあまり相関がないと判断されます。
ただし、共分散の大きさには「\(2\) 組のデータの相関の強さ」だけではなく、「データの数値の大きさ」が反映されます。
「共分散が \(10\) 以上だから正の相関が強い」など、共分散の数値そのもので相関の強弱を一概に判断することはできません。
共分散と相関係数の違い
そこで、共分散からデータの数値の影響を取り除いたのが「相関係数」です。
相関係数は共分散を各変数の標準偏差で割ったもので、これによってデータごとの数値の大きさや単位の影響を抑えられます。
相関係数なら、どんな大きさのデータを扱っても統一的に「相関の強さ」が判断できます。
(例)
分析する \(2\) 変量データ
- A:\((X, Y) = (622, 384),\) \((754, 493),\) \((539, 238), \cdots\)
- B:\((X, Y) = (1.5, 2.9),\) \((7.0, 1.8),\) \((2.2, 3.5), \cdots\)
A と B の共分散が同じ場合 → 相関の強さが同じ程度とはいえない(数値の大きさが違うため)
A と B の相関係数が同じ場合 → A も B も相関の強さはほぼ同じといえる
「相関係数」については、以下の記事で詳しく説明しています。
相関係数 r とは?公式と求め方、相関の強さの目安を解説!
共分散の求め方【例題】
それでは、例題を通して共分散の求め方を説明します。
次のデータは、\(5\) 人の学生の国語 \(x\) (点) と英語 \(y\) (点) の点数のデータである。
学生番号 | \(1\) | \(2\) | \(3\) | \(4\) | \(5\) |
国語 \(x\) 点 | \(70\) | \(50\) | \(90\) | \(80\) | \(60\) |
英語 \(y\) 点 | \(100\) | \(40\) | \(70\) | \(60\) | \(90\) |
このデータの共分散 \(s_{xy}\) を求めなさい。
公式①と公式②、両方の求め方を説明します。
公式①で求める場合
まずは公式①を使った求め方です。
まず、各変数のデータの平均値 \(\overline{x}\), \(\overline{y}\) を求めます。
\(\begin{align} \overline{x} &= \frac{70 + 50 + 90 + 80 + 60}{5} \\ &= \frac{350}{5} \\ &= 70 \end{align}\)
\(\begin{align} \overline{y} &= \frac{100 + 40 + 70 + 60 + 90}{5} \\ &= \frac{360}{5} \\ &= 72 \end{align}\)
次に、個々のデータの値から平均値を引き、偏差 \(x_i − \overline{x}\), \(y_i − \overline{y}\) を求めます。
\(x_1 − \overline{x} = 70 − 70 = 0\)
\(x_2 − \overline{x} = 50 − 70 = −20\)
\(x_3 − \overline{x} = 90 − 70 = 20\)
\(x_4 − \overline{x} = 80 − 70 = 10\)
\(x_5 − \overline{x} = 60 − 70 = −10\)
\(y_1 − \overline{y} = 100 − 72 = 28\)
\(y_2 − \overline{y} = 40 − 72 = −32\)
\(y_3 − \overline{y} = 70 − 72 = −2\)
\(y_4 − \overline{y} = 60 − 72 = −12\)
\(y_5 − \overline{y} = 90 − 72 = 18\)
そして、対応する偏差の積を出します。
\((x_1 − \overline{x})(y_1 − \overline{y}) = 0 \cdot 28 = 0\)
\((x_2 − \overline{x})(y_2 − \overline{y}) = (−20)(−32) = 640\)
\((x_3 − \overline{x})(y_3 − \overline{y}) = 20(−2) = −40\)
\((x_4 − \overline{x})(y_4 − \overline{y}) = 10(−12) = −120\)
\((x_5 − \overline{x})(y_5 − \overline{y}) = (−10)18 = −180\)
最後に、偏差の積の平均を計算すると共分散 \(s_xy\) が求まります。
(見切れる場合は横へスクロール)
よって、共分散は
\(s_xy\)
\(= \displaystyle \frac{1}{5} \{(x_1 − \overline{x})(y_1 − \overline{y}) + (x_2 − \overline{x})(y_2 − \overline{y}) + \cdots + (x_5 − \overline{x})(y_5 − \overline{y})\}\)
\(= \displaystyle \frac{1}{5} \{0 + 640 + (−40) + (−120) + (−180)\}\)
\(= \displaystyle \frac{1}{5} \cdot 300\)
\(= 60\)
よって、このデータの共分散は \(\color{red}{s_{xy} = 60}\) と求められます。
公式②で求める場合
続いて、公式②を使った求め方です。
公式①と同様、各変数のデータの平均値 \(\overline{x}\), \(\overline{y}\) を求めます。
\(\begin{align} \overline{x} &= \frac{70 + 50 + 90 + 80 + 60}{5} \\ &= \frac{350}{5} \\ &= 70 \end{align}\)
\(\begin{align} \overline{y} &= \frac{100 + 40 + 70 + 60 + 90}{5} \\ &= \frac{360}{5} \\ &= 72 \end{align}\)
対応するデータの積 \(x_iy_i\) の和をデータの個数で割り、積の平均値 \(\overline{xy}\) を求めます。
(見切れる場合は横へスクロール)
\(\overline{xy}\)
\(= \displaystyle \frac{1}{5} (x_1y_1 + x_2y_2 + x_3y_3 + x_4y_4 + x_5y_5)\)
\(= \displaystyle \frac{1}{5} (70 \cdot 100 + 50 \cdot 40 + 90 \cdot 70 + 80 \cdot 60 + 60 \cdot 90)\)
\(= \displaystyle \frac{1}{5} (7000 + 2000 + 6300 + 4800 + 5400)\)
\(= \displaystyle \frac{1}{5} \cdot 25500\)
\(= 5100\)
最後に積の平均値 \(\overline{xy}\) から各変数の平均値の積 \(\overline{x} \cdot \overline{y}\) を引くと、共分散 \(s_{xy}\) が求まります。
\(\begin{align}s_{xy} &= \overline{xy} − \overline{x} \cdot \overline{y}\\&= 5100 − 70 \cdot 72\\&= 5100 − 5040\\&= \color{red}{60}\end{align}\)
表を使って求める場合(公式①)
公式①を使う計算は、表を使うと楽にできます。
まずは表の体裁を作ります。
「データ番号 \(i\)」、「各変数のデータ\(x_i\), \(y_i\)」、「各変数の偏差 \(x_i − \overline{x}\), \(y_i − \overline{y}\)」、「偏差の積 \((x_i − \overline{x})(y_i − \overline{y})\)」の列を作り、表下部に合計行、平均行を追加します。(行・列は入れ替えてもOKです!)
データ番号 \(i\) と各データ \(x_i, y_i\) は埋めておきましょう。
(見切れる場合は横へスクロール)
\(i\) | \(x_i\) | \(y_i\) | \(x_i − \overline{x}\) | \(y_i − \overline{y}\) | \((x_i − \overline{x})\)\((y_i − \overline{y})\) |
\(1\) | \(70\) | \(100\) | |||
\(2\) | \(50\) | \(40\) | |||
\(3\) | \(90\) | \(70\) | |||
\(4\) | \(80\) | \(60\) | |||
\(5\) | \(60\) | \(90\) | |||
合計 | |||||
平均 |
データ列を足し算し、データの合計を求めます。
合計をデータの個数 \(5\) で割れば平均値 \(\overline{x}\), \(\overline{y}\) が出ます。
\(i\) | \(x_i\) | \(y_i\) | \(x_i − \overline{x}\) | \(y_i − \overline{y}\) | \((x_i − \overline{x})\)\((y_i − \overline{y})\) |
\(1\) | \(70\) | \(100\) | |||
\(2\) | \(50\) | \(40\) | |||
\(3\) | \(90\) | \(70\) | |||
\(4\) | \(80\) | \(60\) | |||
\(5\) | \(60\) | \(90\) | |||
合計 | \(350\) | \(360\) | |||
平均 | \(70\) | \(72\) |
個々のデータから平均値を引いて偏差 \(x_i − \overline{x}\), \(y_i − \overline{y}\) を求めます。
\(i\) | \(x_i\) | \(y_i\) | \(x_i − \overline{x}\) | \(y_i − \overline{y}\) | \((x_i − \overline{x})\)\((y_i − \overline{y})\) |
\(1\) | \(70\) | \(100\) | \(0\) | \(28\) | |
\(2\) | \(50\) | \(40\) | \(−20\) | \(−32\) | |
\(3\) | \(90\) | \(70\) | \(20\) | \(−2\) | |
\(4\) | \(80\) | \(60\) | \(10\) | \(−12\) | |
\(5\) | \(60\) | \(90\) | \(−10\) | \(18\) | |
合計 | \(350\) | \(360\) | − | − | |
平均 | \(70\) | \(72\) | − | − |
対応する偏差の積 \((x_i − \overline{x})(y_i − \overline{y})\) を求めます。
\(i\) | \(x_i\) | \(y_i\) | \(x_i − \overline{x}\) | \(y_i − \overline{y}\) | \((x_i − \overline{x})\)\((y_i − \overline{y})\) |
\(1\) | \(70\) | \(100\) | \(0\) | \(28\) | \(0\) |
\(2\) | \(50\) | \(40\) | \(−20\) | \(−32\) | \(640\) |
\(3\) | \(90\) | \(70\) | \(20\) | \(−2\) | \(−40\) |
\(4\) | \(80\) | \(60\) | \(10\) | \(−12\) | \(−120\) |
\(5\) | \(60\) | \(90\) | \(−10\) | \(18\) | \(−180\) |
合計 | \(350\) | \(360\) | − | − | |
平均 | \(70\) | \(72\) | − | − |
最後に、偏差の積の合計を求めてデータの総数 \(5\) で割れば、それが共分散 \(s_{xy}\) です。
\(i\) | \(x_i\) | \(y_i\) | \(x_i − \overline{x}\) | \(y_i − \overline{y}\) | \((x_i − \overline{x})\)\((y_i − \overline{y})\) |
\(1\) | \(70\) | \(100\) | \(0\) | \(28\) | \(0\) |
\(2\) | \(50\) | \(40\) | \(−20\) | \(−32\) | \(640\) |
\(3\) | \(90\) | \(70\) | \(20\) | \(−2\) | \(−40\) |
\(4\) | \(80\) | \(60\) | \(10\) | \(−12\) | \(−120\) |
\(5\) | \(60\) | \(90\) | \(−10\) | \(18\) | \(−180\) |
合計 | \(350\) | \(360\) | − | − | \(300\) |
平均 | \(70\) | \(72\) | − | − | 共分散 \(60\) |
表を使うと、数値のかけ間違えといったミスが減るのでオススメです!
共分散の計算問題
最後に、共分散の計算問題に挑戦しましょう!
計算問題「共分散を求める」
次の対応するデータ \(x\), \(y\) の共分散を求めなさい。
\(n\) | \(1\) | \(2\) | \(3\) | \(4\) | \(5\) | \(6\) | \(7\) | \(8\) | \(9\) | \(10\) |
\(x\) | \(7\) | \(2\) | \(4\) | \(9\) | \(8\) | \(3\) | \(5\) | \(1\) | \(5\) | \(6\) |
\(y\) | \(8\) | \(1\) | \(3\) | \(5\) | \(7\) | \(4\) | \(6\) | \(2\) | \(9\) | \(5\) |
ここでは表を使った解答を示しますが、ぜひほかのやり方でも計算練習してみてくださいね!
各データの平均値 \(\overline{x}\), \(\overline{y}\)、偏差 \(x − \overline{x}\), \(y − \overline{y}\)、 偏差の積 \((x − \overline{x})(y − \overline{y})\) などを計算すると次のようになる。
したがって、このデータの共分散は \(s_{xy} = 4\)
答え: \(4\)
以上で問題も終わりです!
\(2\) 変量データの分析は問題としてよく出るのはもちろん、実生活でも非常に便利なので、ぜひ共分散をマスターしてくださいね!