'Python matrix problems [duplicate]

This is continued from this thread: Python matrix, any solution?


Input

from numpy import *
import numpy

x=[['1','7'],
 ['1.5', '8'],
 ['2', '5.5'],
 ['2','9']]

Code

y = x[:, :, None] * x[:, None]
print y.sum(axis=0)

I received error:

"list indices must be integers, not tuple"

But if x is x = numpy.array([[1, 7], [1.5, 8], [2, 5.5], [2, 9]]) then it's ok, but I don't have such input.



Solution 1:[1]

Edit:

It's not 100% clear to me what you're asking/trying to achieve here. In response to the comment about having [['1','7'] ...]: Currently you have string elements in your list; you can easily enough convert to numeric elements with:

xf = [[float(el) for el in m] for m in x]

Original post: Define your list by putting commas between your list elements:

x=[['1','7'],['1.5', '8'],['2', '5.5'],['2','9']]

When I didn't do this, I got your error, but by doing this I avoided the error.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1