python numpyで共分散を求める

python numpyで共分散を求める

pythonで、ライブラリnumpyのcovを使用して、共分散を求めるサンプルコードを記述してます。pythonのバージョンは3.10.0でnumpyのcovを使用してます。

環境

  • OS windows11 home
  • python 3.10.0

numpyインストール

numpyをインストールされていない方は、pipでインストールしておきます。

pip install numpy

Successfully installed numpy-1.22.3

cov使い方

covを使用すると、配列データから共分散を求めることが可能です。

import numpy as np

np.cov(配列1, 配列2, bias=True)[0][1]

以下は、用意した配列から共分散を求めるサンプルコードとなります。

import numpy as np

arr1 = np.array([50, 50, 80, 70, 90])
arr2 = np.array([50, 70, 60, 90, 100])

# 共分散
print( np.cov(arr1, arr2, bias=True)[0][1] ) # 188.0

nan

配列に「nan」が含まれている場合は、「nan」が返ります。

import numpy as np

arr1 = np.array([50, np.nan, 80, 70, 90])
arr2 = np.array([50, 70, 60, 90, 100])

# 共分散
print( np.cov(arr1, arr2, bias=True)[0][1] ) # nan