covarianza python numpy covariance variance

python - covarianza - Var(x) y cov(x, x) no dan el mismo resultado en números



np covariance (2)

Debe usar z = cov (x, sesgo = 1) para normalizar por N, porque var también es norma por N (de acuerdo con this

Una propiedad de la covarianza es que cov (x, x) = var (x)

Sin embargo, en números no obtengo el mismo resultado.

from numpy import var, cov x = range(10) y = var(x) z = cov(x, x)[0][1] print y, z

¿Estoy haciendo algo mal aquí? ¿Cómo puedo obtener el resultado correcto?


El ddof predeterminado de cov (Ninguno) y var (0) son diferentes. Intenta especificar el ddof (o sesgo):

>>> cov(x, x, ddof=0) array([[ 8.25, 8.25], [ 8.25, 8.25]]) >>> var(x) 8.25