ludwig125のブログ

頑張りすぎずに頑張る父

相関係数について

相関係数について

下記相関係数の導出までの説明

正の相関と負の相関

  • データ列1のように、年月日に対して値が増加している場合、これを「正の相関がある」という
  • データ列2のように、年月日に対して値が増加している場合、これを「負の相関がある」という
年月日 20140101 20140102 20140103 20140104 20140105 20140106 20140107 20140108 20140109 20140110
データ列1 正の相関 101 102 103 104 105 106 107 108 109 110
データ列2 負の相関 110 109 108 107 106 105 104 103 102 101

01

相関を数値で表す

参考:http://mcn-www.jwu.ac.jp/~yokamoto/ccc/stat/p22covcor/

年月日を変数x、相関関係を考えたい数値を変数yとする
変数xの平均をm_x、変数yの平均をm_yとする
変数の数をNとする
  • Σ(x-m_x)(y-m_y)/N を計算すると、xとyに正の相関があるか、負の相関があるか分かる ⇒ 上記をxとyの 共分散 という
  • 例えばデータ列1の例では、年月日をx、データ列1の数値をyとすると下記のような計算になる
xの平均 = (20140101 + 20140102 + ・・・ + 20140110)/10 = 20140105.5
yの平均 = (101 + 102 + ・・・ + 110)/10 = 105.5

xとyの共分散 = Σ(x-m_x)(y-m_y)/N
             = { (20140101-20140105.5) × (101-105.5) + ・・・ +(20140110-20140105.5) × (110-105.5) }/10 = 8.25

データ列1とデータ列2の共分散を計算すると下記の通り(エクセルではCOVAR関数を使用)

テータ列 相関 共分散
データ列1 正の相関 8.25
データ列2 負の相関 -8.25

共分散で相関係数を考える場合の問題点

  • 共分散は変数が等倍されるだけで値が変わってしまうため、
  • 複数の単位が異なったデータ列について相関の大きさを比較するには向いていない
  • データ列1やデータ列2の数値を100倍したものをそれぞれデータ列3、データ列4とする
年月日 20140101 20140102 20140103 20140104 20140105 20140106 20140107 20140108 20140109 20140110
データ列3 正の相関(数値が100倍) 10100 10200 10300 10400 10500 10600 10700 10800 10900 11000
データ列4 負の相関(数値が100倍) 11000 10900 10800 10700 10600 10500 10400 10300 10200 10100

02

  • データ列3とデータ列4の共分散
テータ列 相関 共分散
データ列3 正の相関(数値が100倍) 825
データ列4 負の相関(数値が100倍) -825

⇒ 数値が100倍だと共分散も100倍になってしまう

共分散を相関の大きさだと考えた時の問題点として データ列1、2の数値の単位がメートルだとしたとき、 それをセンチメートル単位で見たものをデータ列3、4とすると、 同じ数字を見ているにもかかわらず、2つの場合で相関の大きさが変化するということになってしまう

相関係数

  • 共分散を規格化して、単位をによらない無次元の量としたものを相関係数といい、下記の通り定義する
相関係数 = Σ(x-m_x)(y-m_y)/N ÷ (√(Σ(x-m_x)^2) ÷ (√(Σ(y-m_y)^2)
※相関係数はxとyの共分散をそれぞれの標準偏差で割ったもの

03

参考:http://mcn-www.jwu.ac.jp/~yokamoto/ccc/stat/p22covcor/

この相関係数でデータ列1~4を計算すると下記の通り(エクセルではCORREL関数を使用)

テータ列 相関 相関係数
データ列1 正の相関 1
データ列2 負の相関 -1
データ列3 正の相関(数値が100倍) 1
データ列4 負の相関(数値が100倍) -1

相関係数は単位によらない値になっている。また、最大値が1、最小値が-1となるよう規格化されている

数関係数=Rとした時の表

範囲 いえること
1.0≧|R|≧0.7 高い相関がある
0.7≧|R|≧0.5 かなり高い相関がある
0.5≧|R|≧0.4 中程度の相関がある
0.4≧|R|≧0.3 ある程度の相関がある
0.3≧|R|≧0.2 弱い相関がある
0.2≧|R|≧0.0 ほとんど相関がない

相関がない場合

下記のようなデータ列5は年月日と全く関係のない値をとっているため、相関係数は0に近くなる

年月日 20140101 20140102 20140103 20140104 20140105 20140106 20140107 20140108 20140109 20140110
データ列5 相関なし 101 12 390 -236 1 12 342 -80 100 120

04

テータ列 相関 相関係数
データ列5 相関なし 0.018052993

相関が発見できない場合(シンプソンのパラドックス)

相関係数は変数同士の比例、反比例の関係のみ判断できるので、 下記のデータ列6のように半分に区間を区切れば相関があるデータについて見過ごしてしまう危険性がある

年月日 20140101 20140102 20140103 20140104 20140105 20140106 20140107 20140108 20140109 20140110
データ列6 相関が発見できない 101 102 103 104 105 105 104 103 102 101

05

テータ列 相関 相関係数
データ列6 相関があるのに発見できない 0
集団を2つに分けた場合にある仮説が成立しても、集団全体では正反対の仮説が成立することがある
 ⇒ シンプソンのパラドックス

単純にデータを切り出してその相関係数のみを考えることは危険!

【付録】相関係数はcosθを意味する 下記のようなベクトルを定義すると相関係数はcosθと同じことがわかる

  • x = (x1-m_x),(x2-m_x)・・・(xN-m_x)
  • y = (y1-m_y),(y2-m_y)・・・(yN-m_y) (以下略)