Entiendo cómo funciona la covarianza es que los datos que están correlacionados deberían tener una covarianza algo alta. Me he encontrado con una situación en la que mis datos parecen correlacionados (como se muestra en el diagrama de dispersión) pero la covarianza es casi cero. ¿Cómo puede la covarianza de los datos ser cero si están correlacionados?
import numpy as np
x1 = np.array([ 0.03551153,  0.01656052,  0.03344669,  0.02551755,  0.02344788,
        0.02904475,  0.03334179,  0.02683399,  0.02966126,  0.03947681,
        0.02537157,  0.03015175,  0.02206443,  0.03590149,  0.03702152,
        0.02697212,  0.03777607,  0.02468797,  0.03489873,  0.02167536])
x2 = np.array([ 0.0372599 ,  0.02398212,  0.03649548,  0.03145494,  0.02925334,
        0.03328783,  0.03638871,  0.03196318,  0.03347346,  0.03874528,
        0.03098697,  0.03357531,  0.02808358,  0.03747998,  0.03804655,
        0.03213286,  0.03827639,  0.02999955,  0.0371424 ,  0.0279254 ])
print np.cov(x1, x2)
array([[  3.95773132e-05,   2.59159589e-05],
       [  2.59159589e-05,   1.72006225e-05]])
                    
                        python
                                descriptive-statistics
                                covariance
                                
                    
                    
                        kilojulios
fuente
                
                fuente


Respuestas:
La magnitud de la covarianza depende de la magnitud de los datos y de qué tan cerca están dispersos esos puntos de datos alrededor de la media de esos datos. Es fácil de ver cuando miras la fórmula:
En su caso, la desviación de los datos
x1yx2apunta a la media dex1yx2son:Ahora, si multiplica esos dos vectores entre sí, obviamente obtendrá números bastante pequeños:
Ahora toma la suma y divide por y tienes la covarianza:n - 1 
Esa es la razón por la cual la magnitud de la covarianza no dice mucho sobre la fuerza de cómo
x1yx2co-variar. Al estandarizar (o normalizar) la covarianza, es decir, dividirla por el producto de la desviación estándar dex1yx2(muy similar a la covarianza, es decir2.609127e-05),obtienes el coeficiente de correlación alto, de , que confirma lo que puedes ver en tu gráfica.r = 0,99 
fuente
Hablemos de lo que se puede ver de un vistazo rápido a la trama y algunas comprobaciones de razonabilidad (este es el tipo de cosas que uno puede hacer de manera normal cuando mira los datos, simplemente estar armado con algunos hechos básicos):
En consecuencia, los valores observados de las variaciones en su salida tienen sentido; Ambos son menos que eso, pero más de una décima parte.
De ese análisis muy tosco, nada parece sorprendente.
(¡No es tan malo para un cálculo rápido al comienzo del sobre que comienza con rangos de dos cifras significativas!)
fuente