numpy.array()不将3D列表转换为3D ndarray

时间:2019-08-04 06:32:29

标签: python numpy multidimensional-array numpy-ndarray

我正在编写一个程序,试图将3D python列表转换为3D numpy数组。

data = [i for i in pickle.load(open("resources/pickle/infyDataset.pickle", "rb"))]
print(data) # First time

data = np.array(data, dtype=(np.ndarray))
print(data) # Second time

nsamples, nx, ny = data.shape
data = data.reshape((nsamples,nx*ny))

程序第一次输出:
>>> [[[0, 616.95], [1, 617.95] ... [373, 609.95], [374, 611.1]]]

第二次输出:
>>> [list([[0, 742.8], [1, 742.05] ... [373, 745.35], [374, 745.3]])]

它应该是形状为(261, 375, 2)的numpy数组,但是它返回的形状为(261,)的数组。我认为问题是由于以下事实造成的:将数据解释为<class 'list'>而不是<class 'numpy.ndarray'>的元素数组。

感谢您的帮助!

0 个答案:

没有答案