Следующий фрагмент кода работал в numpy 1.7.1, но он дает ошибку значения в текущей версии. Я хочу знать его основную причину.
import numpy as np
x = [1,2,3,4]
y = [[1, 2],[2, 3], [1, 2],[2, 3]]
a = np.array([x, np.array(y)])
Ниже приводится вывод, который я получаю в numpy 1.7.1
>>>a
array([[1, 2, 3, 4],
[array([1, 2]), array([2, 3]), array([1, 2]), array([2, 3])]], dtype=object)
Но тот же код вызывает ошибку в версии 1.9.2.
----> 5 a = np.array([x, np.array(y)])
ValueError: could not broadcast input array from shape (4,2) into shape (4)
Я нашел одно возможное решение. Но я не знаю, лучше ли это делать.
b= np.empty(2, dtype=object)
b[:] = [x, np.array(y)]
>>> b
array([[1, 2, 3, 4],
array([[1, 2],
[2, 3],
[1, 2],
[2, 3]])], dtype=object)
Пожалуйста, предложите решение для достижения желаемого результата. Благодаря