サステンラボ

サステンラボあなたにやさしい資産運用メディア

| あなたにやさしい資産運用メディア

COLUMN | 2022.5.25

共分散と相関

共分散は、2種類のデータ間の関係性を表す指標です。共分散を計算することで、データ間の関係を定量的に表現することができます。また、相関係数や相関と呼ばれるものは、共分散をもとに計算された指標です。共分散と相関係数の計算や考え方を、具体的な例を用いてご紹介します。 

2種類のデータの関係性を考える

あるコンビニでのアイスクリームの売上数と、その日の気温が表のようになったとします。気温とアイスクリームの売上数にはどんな関係があるでしょうか。

データ気温(℃)アイスクリーム(個)
3739
3635
3632
3433
3430
3327
3235
3124
2925
2820
気温とアイスクリームの売上数

気温が高い日にはアイスクリームの売上数も増えていそうです。散布図を描いてみると下のようになります。

気温とアイスクリームの売上数の散布図

散布図を見ても、気温が上がるとアイスクリームの売上数が増える傾向がありそうです。

共分散は、このような2種類のデータの関係性を数値として表現します。共分散には次のような意味があります。

共分散の値が正(プラス)のとき:一方のデータの値が増加すると、もう一方のデータの値が増加する傾向がある
共分散の値が負(マイナス)のとき:一方のデータの値が増加すると、もう一方のデータの値が減少する傾向がある
共分散の値が0(ゼロ)のとき:2種類のデータに関係性は無い

先ほどのアイスクリームの例では、気温が上がると、アイスクリームの売上数も増えたので、共分散が正になっていると言えます。

共分散

共分散は、2種類のデータのばらつきを同時に考えることで、それらの関係性を数字にしたものです。一方、分散は1種類のデータのばらつき度合を表す数字です(分散や標準偏差の具体的な計算方法は「標準偏差とリスク」の記事をご覧ください)。

上記の気温とアイスクリームの例で、共分散が正になっていることを実際に計算して確かめてみます。

共分散の計算

共分散の計算は、分散の計算方法と似ています。分散の計算と異なる点は、共分散の計算では2種類のデータを同時に考えていく、という点です。

共分散の計算手順は、(1)2つのデータの偏差を計算、(2)一方の偏差×もう一方の偏差を計算、(3)共分散を計算、となります。

データ気温(℃)アイスクリーム(個)(1)
気温の偏差(℃)
(1)
アイスクリームの偏差(個)
(2)
偏差(℃)×偏差(個)
373937-33=439-30=94×9=36
343334-33=133-30=31×3=3
363536-33=335-30=53×5=15
343034-33=130-30=01×0=0
323532-33=-135-30=5(-1)×5=-5
292529-33=-425-30=-5(-4)×(-5)=20
282028-33=-520-30=-10(-5)×(-10)=50
312431-33=-224-30=-6(-2)×(-6)=12
332733-33=027-30=-30×(-3)=0
363236-33=332-30=23×2=6
合計330300137
平均3330(3) 共分散
137/10=13.7
気温とアイスの例の共分散の計算手順

(1)2つのデータの偏差の計算

気温とアイスクリームの個数について、それぞれの偏差を計算します。これにより、各データが平均からどれだけ離れているかが分かります。偏差は、データの値-平均値 で計算できます。

例えばデータ①(気温37℃、アイスクリーム39個)については、気温の平均値は33℃、アイスクリームの売上数の平均値は30個なので、
 気温の偏差 = 37-33 = +4℃
 アイスクリームの偏差 = 39-30 = +9個
と計算できます。

データ①(気温37℃、アイスクリーム39個)の偏差

(2)一方の偏差×もう一方の偏差を計算

(1)で計算した偏差を使って、気温の偏差(℃)×アイスクリームの偏差(個)を計算します。偏差(平均からの乖離)どうしの積を計算し、その符号と数字の大きさを見ることで、①~⑩のデータそれぞれについて、気温とアイスクリームの関係を計算していきます。

例えば、気温が平均よりも高く(気温の偏差がプラス)、アイスクリームの個数も平均よりも高い(アイスクリームの偏差がプラス)場合、偏差どうしの積はプラスになります。

偏差の積の、散布図上のイメージ

(3)共分散の計算

(2)で計算した値の平均をとることで、共分散が計算できます。

 $$137÷10 =13.7(℃×個)$$

偏差どうしの積の平均的な値(つまり共分散)が13.7となったので、データ①~⑩の全体を平均的にみると、偏差どうしの積がプラスになっていることが確認できました。

今回計算した共分散の単位である「℃×個」の部分は、元データの単位に応じて変わります。

相関係数

共分散の単位

共分散の単位についてもう少し考えてみます。以下のような10人の身長と体重のデータがあります。

データ身長(cm)体重(kg)
A15448
B15755
C16058
D16361
E16457
F16860
G17068
H17263
I17772
J18578
平均16762
10人の身長(cm)と体重(kg)のデータ
身長と体重の散布図

共分散を計算する際には、さきほどと同様の手順で計算すれば良いのですが、用いる単位により共分散の値の大きさが変わってしまいます。

例1) 身長の単位をcm、体重の単位をkgとしたまま共分散を計算する場合

共分散は、70.8(cm×kg)となります。

データ身長(cm)体重(kg)身長の偏差(cm)体重の偏差(kg)偏差(cm)×偏差(kg)
A15448-13-14182
B15755-10-770
C16058-7-428
D16361-4-14
E16457-3-515
F168601-2-2
G170683618
H17263515
I177721010100
J185781816288
平均1676270.8(cm×kg)
身長(cm)、体重(kg)で共分散を計算した場合

例2) 身長の単位をcm、体重の単位をkgからgに変換して共分散を計算する場合

共分散は、70,800(cm×g)となります。

データ身長(cm)体重(g)身長の偏差(cm)体重の偏差(kg)偏差(cm)×偏差(kg)
A15448,000-13-14,000182,000
B15755,000-10-7,00070,000
C16058,000-7-4,00028,000
D16361,000-4-1,0004,000
E16457,000-3-5,00015,000
F16860,0001-2,000-2,000
G17068,00036,00018,000
H17263,00051,0005,000
I17772,0001010,000100,000
J18578,0001816,000288,000
平均16762,00070,800(cm×g)
身長(cm)、体重(g)で共分散を計算した場合

共分散は、70.8(cm×kg)と70,800(cm×g)となりました。このように、単位によって共分散の大きさが大きく変わってしまうことがあります。

相関係数の計算

相関係数は、共分散から単位の影響をうまく取り除いた数値です。一般的に、単位の影響を取り除くには、同じ単位を持つ数値で割ればよいです。相関係数の計算では、共分散を、2つの元データの標準偏差で割ることで、単位の影響を取り除きます。

上記の例の場合、共分散を、身長の標準偏差(cm)と体重の標準偏差(kgまたはg)の両方で割ることになります。

データ身長(cm)体重(kg)偏差(cm)×偏差(kg)
A15448182
B1575570
C1605828
D163614
E1645715
F16860-2
G1706818
H172635
I17772100
J18578288
平均16762共分散
70.8(cm×kg)
標準偏差9.0(cm)8.3(kg)
相関係数\(\frac{70.8(cm×kg)}{9.0(cm)×8.3(kg)}=0.956\)
身長(cm)、体重(kg)で共分散を計算した場合

身長の標準偏差が9.0(cm)、体重の標準偏差が8.3(kg)なので、共分散70.8(cm×kg)をこれらで割ると、

$$70.8(cm×kg)÷9.0(cm)÷8.27(kg) = 0.956(単位無し)$$

となり、相関係数が0.956となりました。ここでの相関とは、一方のデータの値が上昇すると、もう一方のデータの値がどう動くかについての関係を表します。ちなみに、相関係数のように、単位の無い数を無次元量と呼びます。共分散を、相関係数という無次元量に変換することで、単位による数字の大きさに依存することなく、データ間の相関関係を表すことができます。

体重の単位をgにして相関係数を計算した場合は、

$$70,800(cm×g)÷9.0(cm)÷8,270(g) = 0.956(単位無し)$$

となり、相関係数の値はこちらの場合も0.956となります。

相関係数の数字とその意味

一般に、相関係数とは、ピアソンの積率相関係数のことを指します。相関係数には次のような性質があります。

 相関係数は、-1~1の間におさまる
 相関係数が1に近いほど、強い正の相関がある…一方の値が上昇するともう一方も増える
 相関係数が0に近いほど、相関が弱い
 相関係数が-1に近いほど、強い負の相関がある…一方の値が上昇するともう一方は減る

相関係数がプラスになる時のイメージ図
相関係数がマイナスになる時のイメージ図

このような性質があり、共分散よりもデータ間の関係を解釈しやすいことからも、相関係数はとてもよく使用されます。

ただし、注意すべき点として、相関係数が1や-1に近い数字となったとしても、扱うデータによっては必ずしも因果関係があるわけではありません。データの意味を十分に理解した上で関係を解釈する必要があります。

金融資産の相関とその活用

例えば、相関を計算すると、2つ以上の金融資産がどのように連動して動くのかが分かります。次の表のように、1年ごとに資産A,Bのリターンを記録し、5年間の平均と標準偏差が表のようになったとします。資産Aと資産Bのリターンにはどのような関係があるでしょうか。

リターン1年目2年目3年目4年目5年目平均標準偏差
資産A-4%2%6%-3%4%1.0%3.9%
資産B30%20%-15%20%-10%9.0%18.0%
資産Aと資産Bのリターンの5年間の平均と標準偏差

計算過程は省きますが、相関係数を計算すると約-0.90となります。相関係数が-1に近いので、資産A,Bの間には強い負の相関があるということになります。つまり、資産Aのリターンと資産Bのリターンは逆の動きをする傾向があると言えます。

資産Aと資産Bのリターン

ちなみに、資産Aは標準偏差が小さいので低リスク、資産Bは標準偏差が大きいので高リスクと考えることができます。標準偏差とリスクの考え方については、「標準偏差とリスク」の記事をご覧ください。

さらなる活用例

金融では、複数の資産に投資をすることで、元の資産よりもリスクを低下できることがあります。特に、相関係数がマイナスである(リターンの動き方が逆になるような)複数の資産に同時に投資する場合には、顕著に表れる傾向があります。

例えば、100万円を使って、資産Aに83.2%(83.2万円)、資産Bに16.8%(16.8万円)投資していたとします。

リターン1年目2年目3年目4年目5年目平均標準偏差
資産A-4%2%6%-3%4%1.0%3.9%
資産B30%20%-15%20%-10%9.0%18.0%
資産Aに83.2%,
資産Bに16.8%
1.7%5.0%2.5%0.9%1.6%2.3%1.4%
資産Aと資産Bに同時に投資した時のリターン

例えば、1年目のリターンは、「1年目の資産Aのリターン×資産Aの配分比率 + 1年目の資産Bのリターン×資産Bの配分比率」で計算できます。
$$ -4\%×83.2\% + 30\%×16.8\% ≒ 1.7\% $$

資産A(リスク3.9%)と資産B(リスク18.0%)に、適当な配分で同時に投資することで、リスクが1.4%となりました。元の資産A, Bのどちらよりも低いリスクとなっています。つまり、元の資産単体に投資をするよりも、資産A,Bの両方に投資をすることで、リスクを抑えることができたということが分かります。

ちなみに、リスクを低下させるための資産Aと資産Bの配分割合は、何でも良いというわけではなく、うまく決めなければなりません。この驚くべき現象は、金融のポートフォリオ理論の話ですが、具体的には別の記事でご紹介予定です。

まとめ

・共分散は、2種類のデータの関係を表した数値だが、単位による数値の大きさの影響を受けやすい
・相関係数は、共分散から単位の影響をうまく取り除いた数値なので、元データの数値の大きさに依存しない
・相関係数は、-1~1の値を取り、データ間の相関関係を表す
・相関関係があるからと言って、必ずしもデータ間に因果関係があるわけではない

(ご参考)数式での表現

2種類のデータ\(x, y\)について、\(i\)番目のデータをそれぞれ\(x_i, y_i\)、平均をそれぞれ\(\overline{x}, \overline{y}\)とすると、各値は以下のように計算できます。

 \(x\)の分散:\(\sigma_x^2=\frac{1}{n}\sum_{i=1}^{n}(x_i-\overline{x})^2\)
       \(=\frac{1}{n}\{(x_1-\overline{x})^2 + (x_2-\overline{x})^2 +…+ (x_n-\overline{x})^2\}\)

 \(y\)の分散:\(\sigma_y^2=\frac{1}{n}\sum_{i=1}^{n}(y_i-\overline{y})^2\)
       \(=\frac{1}{n}\{(y_1-\overline{y})^2 + (y_2-\overline{y})^2 +…+ (y_n-\overline{y})^2\}\)

 \(x\)と\(y\)の共分散:\(\sigma_{xy}=\frac{1}{n}\sum_{i=1}^{n}(x_i-\overline{x})(y_i-\overline{y})\)
          \(=\frac{1}{n}\{(x_1-\overline{x})(y_1-\overline{y}) + (x_2-\overline{x})(y_2-\overline{y}) +…+ (x_n-\overline{x})(y_n-\overline{y})\}\)

 \(x\)と\(y\)の相関係数:\(\rho_{xy}=\frac{\sigma_{xy}}{\sigma_{x}×\sigma_{y}}\)