如何用 Pandas 计算协方差矩阵

Jul*_*Coo 6 python numpy covariance dataframe pandas

我想弄清楚如何用 Pandas 计算协方差矩阵。我不是数据科学家或财务人员,我只是一个普通的开发人员,正在脱离他的联盟。

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(0,100,size=(252, 4)), columns=list('ABCD'))
print(df.cov())
Run Code Online (Sandbox Code Playgroud)

所以,如果我这样做,我会得到那种输出:

在此处输入图片说明

我发现这个数字很大,我希望它们接近于零。我是否必须在获得 cov 之前计算回报?

有没有熟悉这个的人可以解释一下,或者给我指出一个很好的解释链接?我找不到 Covariance Matrix For Dummies 的任何链接。

问候, 朱利安

Nod*_*ili 4

协方差是衡量两个资产(或任何两个向量或数组)的回报同步变化的程度。正协方差意味着资产收益同向变动,而负协方差意味着收益反向变动。

另一方面我们有:

相关系数是确定两个变量运动关联程度的度量。请注意,相关系数衡量两个数组/向量/资产之间的线性关系

因此,投资组合经理试图减少两种资产之间的协方差,并使相关系数保持为负,以使投资组合具有足够的多元化。这意味着一种资产回报率的下降不会导致第二种资产回报率的下降(这就是我们需要负相关性的原因)。

也许您的意思是相关系数接近于零,而不是协方差。