相関係数(行列)(numpy)を計算するPythonコード

Pythonコード

numpyモジュールのcorrcoef()関数を利用し, 相関係数(行列)を出力する。

corrcoef(x,y)として, xyにデータを指定する。xx, xy, yx, yyの相関係数を並べた行列が出力される。

相関係数のみ出力する場合, corrcoef(x,y)[1,0]などと表記し, 行列の $(1, 0)$ 成分のみを出力する。

3変量以上の相関係数行列を出力する場合は, 各リスト(データ)をnumpy.array()ndarray型に変換しcorrcoef()を利用する。

入力例①. [1, 2, 3, 4, 5][4, 4, 7, 10, 12]のデータの相関係数行列と相関係数を出力する。

import numpy as np

x = [1, 2, 3, 4, 5]
y = [4, 4, 7, 10, 12]

print(np.corrcoef(x, y))
print(np.corrcoef(x, y)[1,0])

入力例②. [1, 2, 3, 4, 5][4, 4, 7, 10, 12], [-3, 0, -3, -4, -4]のデータの相関係数行列を出力する。

import numpy as np

x = [1, 2, 3, 4, 5]
y = [4, 4, 7, 10, 12]
z = [-3, 0, -3, -4, -4]

data = np.array([x, y, z])
corr_matrix = np.corrcoef(data)
print(corr_matrix)

コメントを残す