将嵌套列表转换为numpy数组

时间:2018-07-16 16:29:13

标签: python python-3.x list numpy

我有一些数据以[[[0, 1], [2, 3]], [[4, 5], [6,7]]]的形式排列,例如3个维度。但是,我正在使用的函数需要一个numpy数组才能工作,因此我需要将其从嵌套列表转换为一个。无论何时,只要我总是发现第一层的两层列表都可以转换,但是最后一层却不可以?例如如果我尝试打印:

print(data)          # Prints a numpy.ndarray
print(data[0][0])    # Prints a numpy.ndarray
print(data[0][0][0]) # Prints a list

我尝试了几种不同的方法来转换它,但是它们都以这种方式返回数据?有人知道我能做什么吗?

1 个答案:

答案 0 :(得分:1)

对于您的数据指的是什么却有些困惑

import numpy as np

x = [[[0, 1], [2, 3]], [[4, 5], [6,7]]]

# convert to numpy.ndarray
y = np.asarray(x)
print(type(y)) # y is now a numpy.ndarray

# Checking dimensions
print(y.shape)  # (2,2,2) - 3D array