Javaaaa - 1 year ago 98

Python Question

I using the dot() function from numpy to multiply a matrix of 3x3 with a numpy.array of 1x3. The output is for example this:

[[ 0.16666667 0.66666667 0.16666667]]

which is of type:

`<class 'numpy.matrixlib.defmatrix.matrix'>`

how can I convert this to a list. Because I know the result will always be a matrix of 1x3 so it should be coverted to a list because I need to be able to loop through it later for calculation the pearson distance of two of those lists.

Answer

May not be the optimal way to do this but the following works:

```
a = numpy.matrix([[ 0.16666667, 0.66666667, 0.16666667]])
list(numpy.array(a).reshape(-1,))
```

or

```
numpy.array(a).reshape(-1,).tolist()
```

or

```
numpy.array(a)[0].tolist()
```

Source (Stackoverflow)