Question
Asked By – Meh
How to convert
["1.1", "2.2", "3.2"]
to
[1.1, 2.2, 3.2]
in NumPy?
Now we will see solution for issue: How to convert an array of strings to an array of floats in numpy?
Answer
Well, if you’re reading the data in as a list, just do np.array(map(float, list_of_strings))
(or equivalently, use a list comprehension). (In Python 3, you’ll need to call list
on the map
return value if you use map
, since map
returns an iterator now.)
However, if it’s already a numpy array of strings, there’s a better way. Use astype()
.
import numpy as np
x = np.array(['1.1', '2.2', '3.3'])
y = x.astype(np.float)
This question is answered By – Joe Kington
This answer is collected from stackoverflow and reviewed by FixPython community admins, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0