Numpy Covariance Matrix numpy.cov

时间:2017-04-02 23:25:01

标签: python matlab numpy sympy covariance

我正在使用numpy并且想要为ndarray计算协方差矩阵。我正在尝试使用numpy.cov()但是没有得到正确的结果。更多细节如下。

我的ndarray是768x8,其中8是我数据集中的数字功能。

当我使用MATLAB计算协方差矩阵时,我得到一个8x8(这就是我要求的),但是当我使用np.cov()时,我得到的是768x768,这是不正确的。我尝试将rowvar参数更改为true,但这不起作用。

对numpy.cov()的正确调用是什么?换句话说,我如何使用numpy从MATLAB重现cov()结果。

1 个答案:

答案 0 :(得分:12)

令人惊讶的是,documentation可能会告诉你。您应该传递rowvar=False以指示列代表变量。

>>> data.shape
(768, 8)
>>> numpy.cov(data, rowvar=False).shape
(8, 8)