web-dev-qa-db-fra.com

Conversion de liste en tableau numpy

J'ai réussi à charger des images dans un dossier à l'aide de la ligne de commande sklearn: load_sample_images()

Je voudrais maintenant le convertir au format numpy.ndarray Avec le type de données float32

J'ai réussi à le convertir en np.ndarray En utilisant: np.array(X), cependant np.array(X, dtype=np.float32) et np.asarray(X).astype('float32') me donnent l'erreur:

ValueError: setting an array element with a sequence.

Y a-t-il un moyen de contourner ce problème?

from sklearn_theano.datasets import load_sample_images
import numpy as np  

kinect_images = load_sample_images()
X = kinect_images.images

X_new = np.array(X)  # works
X_new = np.array(X[1], dtype=np.float32)  # works

X_new = np.array(X, dtype=np.float32)  # does not work
25
Priya Narayanan

Si vous avez une liste de listes, il vous suffit d'utiliser ...

import numpy as np
...
npa = np.asarray(someListOfLists, dtype=np.float32)

par ceci [~ # ~] link [~ # ~] dans la documentation scipy/numpy. Vous avez juste besoin de définir dtype dans l'appel à asarray.

25
Thom Ives