Python3 np.cov 给出奇怪的结果
Python3 np.cov giving strange result
import numpy as np
X = np.arange(6).reshape(2,3)
np.cov(X)
#Results in:
array([[1., 1.],
[1., 1.]])
虽然它应该输出:
array([[0.66666667, 0.66666667],
[0.66666667, 0.66666667]])
如评论中所述,默认值 cov
由 N-1
归一化,这是一个无偏估计。要获得简单平均值,您可以执行以下任一解决方案:
np.cov(X,bias=True)
或
np.cov(X,ddof=0)
输出:
[[0.66666667 0.66666667]
[0.66666667 0.66666667]]
import numpy as np
X = np.arange(6).reshape(2,3)
np.cov(X)
#Results in:
array([[1., 1.],
[1., 1.]])
虽然它应该输出:
array([[0.66666667, 0.66666667],
[0.66666667, 0.66666667]])
如评论中所述,默认值 cov
由 N-1
归一化,这是一个无偏估计。要获得简单平均值,您可以执行以下任一解决方案:
np.cov(X,bias=True)
或
np.cov(X,ddof=0)
输出:
[[0.66666667 0.66666667]
[0.66666667 0.66666667]]