Ответ 1
Вы должны использовать z = cov (x, bias = 1) для нормализации по N, так как var также является нормой по N (согласно this
Свойство ковариации состоит в том, что cov (x, x) = var (x)
Однако в numpy я не получаю тот же результат.
from numpy import var, cov
x = range(10)
y = var(x)
z = cov(x, x)[0][1]
print y, z
Я делаю что-то неправильно здесь? Как я могу получить правильный результат?
Вы должны использовать z = cov (x, bias = 1) для нормализации по N, так как var также является нормой по N (согласно this
Значение ddof по умолчанию cov
(None) и var
(0) различно. Попробуйте указать ddof (или смещение):
>>> cov(x, x, ddof=0)
array([[ 8.25, 8.25],
[ 8.25, 8.25]])
>>> var(x)
8.25