相関係数・相関行列

相関係数(correlation coefficient)とは、身長と体重などの2次元データの間の関連性を調べる指標です。相関係数は、−1から1までの間の値を取り、1に近ければ2つのデータに強い相関関係があります。また、−1に近ければ負の相関関係があります。相関係数にはさまざまなタイプがありますが、その中でももっともよく使われるものは、次で紹介するピアソンの相関係数(Pearson’s correlation coefficient)です。

2次元データの相関係数

n個の2次元のデータ列 [latex](X_i,Y_i)~(i=1,2,3,\cdots,n)[/latex]を考えます。例えば、身長と体重、数学と英語の成績などが良い例です。

その時、このデータ列[latex](X_i,Y_i)~(i=1,2,3,\cdots,n)[/latex]のピアソンの相関係数(Pearson’s correlation coefficient)[latex]\rho(X,Y)[/latex]は以下で定義されます。

[latex size=2]\displaystyle \rho(X,Y)=\frac{\sum_{i=1}^n(X_i-\bar{X})(Y_i-\bar{Y})}{\sqrt{\sum_{i=1}^n(X_i-\bar{X})^2}\sqrt{\sum_{i=1}^n(Y_i-\bar{Y})^2}}.[/latex]

 

ここで、[latex]\bar{X}[/latex]と[latex]\bar{Y}[/latex]は、それぞれデータ列[latex]X_i~(i=1,2,3,\cdots,n)[/latex]と[latex]Y_i~(i=1,2,3,\cdots,n)[/latex]の平均です。実は、この相関関数は次のように書き換えられます。

 

[latex size=2]\displaystyle \rho(X,Y)=\frac{Cov(X,Y)}{\sigma_X\sigma_Y}[/latex]

 

ここで、[latex]Cov(X,Y)[/latex]は共分散です。また、[latex]\sigma_X[/latex]と、[latex]\sigma_Y[/latex]は、それぞれデータ列[latex]X_i~(i=1,2,3,\cdots,n)[/latex]と[latex]Y_i~(i=1,2,3,\cdots,n)[/latex]の標準偏差です。 この式は、相関係数は、共分散をそれぞれの標準偏差で割ったものと等しいことを表しています。

相関係数[latex]\rho(X,Y)[/latex]は、定義から [latex]-1\le \rho(X,Y)\le 1[/latex]となることが証明できます。

相関係数が1に近ければ、2つのデータは相関が強く、逆に-1に近ければ、強く逆相関しています。また、相関係数が0に近ければ無相関です。例えば、数学と物理の成績の相関係数を求めると、1に近い値が出てくることが予想されます。しかし、おそらく数学と体育の間には強い相関はないでしょう(多分ほとんど無相関と思われます)。

ここで、どれくらい相関係数が大きければ、本当に相関があるのかということは、データ列の大きさ[latex]n[/latex]に強く依存しているので、一概に言えません。

相関係数が、0.5でも、相関がある場合もあるし、相関がない場合(つまり、偶然に相関があるように見える)もある。一般にデータ列のサイズ[latex]n[/latex]が大きいほど、相関係数の信頼性は大きくなります。相関係数に統計的優位性があるかどうかは、相関係数の検定をすることによって調べます。

 
(例)次の五人の身長と体重の相関係数を求めてみましょう。

身長([latex]X_i[/latex]) 体重([latex]Y_i[/latex]) [latex]X_i-\bar{X}[/latex] [latex]Y_i-\bar{Y}[/latex]
Aさん 174cm 65kg 2cm 3kg
Bさん 163cm 54kg -9cm -8kg
Cさん 182cm 70kg 10cm 8kg
Dさん 169cm 58kg -3cm -4kg
Eさん 172cm 63kg 0cm 1kg

まず、身長の平均[latex]\bar{X}[/latex]と体重の平均[latex]\bar{Y}[/latex]を求めると172cmと62kgになります。そして、五人の身長と身長平均の差[latex]X_i-\bar{X}[/latex]を求めます。また、同様に五人の体重と体重の平均の差[latex]Y_i-\bar{Y}[/latex]を求めます。これらの値は上の表の右側2列に記入しました。これから共分散を求めると次のようになります。

[latex size=2]\displaystyle Cov(X,Y)=\frac{1}{5}(2\times3+(-9)\times(-8)+10\times8+(-3)\times(-4)+0\times(-8))=34[/latex]

 
よって、上記の身長と体重のデータの共分散(標本共分散)は42.5になります。また、身長・体重のそれぞれの標準偏差はつぎのように計算できます。

[latex size=2]\displaystyle \sigma_X^2=\frac{1}{5}(2\times2+(-9)\times(-9)+10\times10+(-3)\times(-3)+0\times0)=6.228965[/latex]

 
[latex size=2]\displaystyle \sigma_Y^2=\frac{1}{5}(3\times3+(-8)\times(-9)+8\times8+(-4)\times(-3)+(-8)\times0)=5.549775[/latex]

 
よって、相関係数はつぎのように計算できます。
[latex size=2]\displaystyle \rho(X,Y)=\frac{Cov(X,Y)}{\sigma_X\sigma_Y}=0.98353[/latex]

 

多次元データの相関行列

2次元データの時の相関係数を多次元データに拡張すると相関行列になります。n個のm次元のデータ [latex](X_i^1,X_i^2,\cdots,X_i^m)~(i=1,2,3,\cdots,n)[/latex]があった時, m個の変数のそれぞれのペアについて相関係数を計算すると、[latex]m \times m[/latex]行列になり、相関行列(correlation matrix)[latex]\rho_{pq}[/latex]と呼ばれます。

[latex size=2]\displaystyle \rho_{pq}=\frac{\sum_{i=1}^n(X_i^p-\bar{X^p})(X_i^q-\bar{X^q})}{\sqrt{\sum_{i=1}^n(X_i^p-\bar{X^p})^2}\sqrt{\sum_{i=1}^n(X_i^q-\bar{X^q})^2}}.[/latex]

 

ここで、[latex]\bar{X^p}[/latex]は、それぞれデータ列[latex]X_i^p~(i=1,2,3,\cdots,n)[/latex]の平均です。相関係数の時と同じように、相関行列は共分散行列標準偏差を用いて次のように書き換えられます。

[latex size=2]\displaystyle \rho_{pq}=\frac{Cov(X^p,X^q)}{\sigma_{X^p}\sigma_{X^q}}.[/latex]

 

ここで、[latex]Cov(X^p,X^q)[/latex]は共分散行列です。また、[latex]\sigma_{X^p}[/latex]と、[latex]\sigma_{X^q}[/latex]は、それぞれデータ列[latex]X_i^p~(i=1,2,3,\cdots,n)[/latex]と[latex]Y_i^q~(i=1,2,3,\cdots,n)[/latex]の標準偏差です。 この式は、相関行列が共分散行列をそれぞれの標準偏差で割ったものと等しいことを表しています。

ちなみに、この相関行列[latex]\rho_{pq}[/latex]の対角成分[latex]\rho_{pp}[/latex]は、1となります。

目次に戻る

●関連ページ

平均、分散、標準偏差
共分散・共分散行列
相関係数・相関行列
中心極限定理
統計的推測の概論