Проблема в том, что у вас есть зубчатый массив . Другими словами, каждый подсписок в вашем списке списков не имеет одинаковую длину, поэтому вы не можете создать обычный массив NumPy int
.
Таким образом, вы можете использовать простое понимание списка или map
. Я предполагаю, что ваш список a
начинается с [0]
и заканчивается [5]
:
c = [[i, j] for i, j in zip(a, b)] # list comprehension
c = list(map(list, zip(a, b))) # functional version
# [[[0], [1, 2, 3]],
# [[1], [1, 2, 3]],
# [[2], [1, 2, 3]],
# [[3], [1, 2, 3]],
# [[4], [1, 2, 3]],
# [[5], [1, 2, 3]]]
Преобразование этого в массив возможно, но оно будет иметь object
dtype. Для большинства целей он будет мало полезен по сравнению с обычным списком списков Python:
c_arr = np.array(c)
# array([[[0], [1, 2, 3]],
# [[1], [1, 2, 3]],
# [[2], [1, 2, 3]],
# [[3], [1, 2, 3]],
# [[4], [1, 2, 3]],
# [[5], [1, 2, 3]]], dtype=object)