От ND до 1D массивов

Скажи у меня есть массивa:

a = np.array([[1,2,3], [4,5,6]])

array([[1, 2, 3],
       [4, 5, 6]])

Я хотел бы преобразовать его в одномерный массив (то есть вектор-столбец):

b = np.reshape(a, (1,np.product(a.shape)))

но это возвращается

array([[1, 2, 3, 4, 5, 6]])

что не то же самое, что:

array([1, 2, 3, 4, 5, 6])

Я могу взять первый элемент этого массива, чтобы вручную преобразовать его в одномерный массив:

b = np.reshape(a, (1,np.product(a.shape)))[0]

но это требует от меня знать, сколько измерений имеет исходный массив (и объединить [0] при работе с более высокими измерениями)

Есть ли независимый от размеров способ получения вектора столбца / строки из произвольного массива?

Ответы на вопрос(4)

Ваш ответ на вопрос