2017-07-07 17 views
0

ベクトルのエントリの各組み合わせの共分散を表示する* n自己共分散行列を計算するためのPython関数はありますか?[a1、a2、a3 ... ]?私はそれを行うにはnp.cov取得することはできません... 私はそれが次のようになりたい:ベクトル内の各値の共分散を示す共分散行列

cov(a1,a1) cov(a1,a2)... cov(a1,an) 
    cov(a2,a1) cov(a2,a2)... 
    ... 
    cov(an,a1) ...   cov(an,an) 

すべてのヘルプは歓迎です! 乾杯、 Lena

+0

配列の2つの要素間の共分散をどのように計算しますか? Numpyの 'cov()'は[共分散のサンプル]を計算します(https://en.wikipedia.org/wiki/Sample_mean_and_covariance)。これを行うには、2つのサンプル、すなわち2つのアレイが必要である。 1要素のアレーを使用して計算すると、常にN(1 /(1-1)= inf)、またはNで除算したバイアス付きバージョンを使用する場合は0が得られます – gionni

答えて

0

あなたはpandasパッケージを使用できます。 http://pandas.pydata.org/

データフレームには、DataFrame内のすべての列間の共分散を計算する共分散法があります。

これはおおよそのワークフローです。

import pandas as pd 
df = pd.DataFrame(your_vector) 
cov = df.cov() 

COVが今、あなたのベクトルのすべての列の間covariencesが含まれてデータフレームです。結果として得られるデータフレームで必要な分析を実行することはできません。