【发布时间】:2011-12-14 14:43:32
【问题描述】:
协方差的一个性质是,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
我在这里做错了吗?怎样才能得到正确的结果?
【问题讨论】:
标签: python numpy covariance variance
协方差的一个性质是,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
我在这里做错了吗?怎样才能得到正确的结果?
【问题讨论】:
标签: python numpy covariance variance
您必须使用 z=cov(x,bias=1) 才能通过 N 进行归一化,因为 var 也是 N 的规范 (据this
【讨论】:
cov(无)和var(0)的默认ddof不同。尝试指定 ddof(或偏差):
>>> cov(x, x, ddof=0)
array([[ 8.25, 8.25],
[ 8.25, 8.25]])
>>> var(x)
8.25
【讨论】: