# Covariance

I do not find if there is a command to evaluate the covariance between two vectors. Should I construct it by myself ?

Covariance

add a comment

2

You can use numpy to compute the covariance of two list of numbers:

```
sage: x = [random() for _ in range(10)]
sage: y = [random() for _ in range(10)]
sage: import numpy as np
sage: np.cov(x,y)
array([[ 0.09306006, -0.04053014],
[-0.04053014, 0.10647864]])
```

The numpy array can be converted back into a SageMath matrix:

```
sage: matrix(_)
[ 0.09306006427535807 -0.04053014267978353]
[-0.04053014267978353 0.10647864456311205]
```

More usage examples can be found in the numpy doc.

Indeed, doing `search_src('covariance')`

seems to confirm there is nothing in the sage library to do that. I think as SageMath users, it is not a bad thing that we learn how to use python libraries such as numpy, pandas, matplotlib, etc.

Asked: **
2020-04-02 14:06:16 -0500
**

Seen: **48 times**

Last updated: **Apr 02**

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.