【发布时间】:2015-01-07 03:26:58
【问题描述】:
我已经设法使用命令行 sklearn 将图像加载到文件夹中:load_sample_images()
我现在想将其转换为具有float32 数据类型的numpy.ndarray 格式
我能够使用 np.array(X) 将其转换为 np.ndarray,但是 np.array(X, dtype=np.float32) 和 np.asarray(X).astype('float32') 给了我错误:
ValueError: setting an array element with a sequence.
有没有办法解决这个问题?
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
【问题讨论】:
-
您有一个列表列表,其中并非所有列表都具有相同数量的条目。
-
好的。解决办法是什么? python新手,请多多包涵
-
检查你的
np.array(x)成功后的类型。如果它是默认的 float64 - 那么您只是试图分配一个不适合您的列表(或列表列表)的类型。 -
np.array(x) uint8 的数据类型。我认为这是一个列表列表
标签: python numpy scikit-learn