In [51]: b0=np.array([1,2])
...: b1=np.array([3,4])
Неверный заказ:
In [56]: np.vstack((b0,b1))
Out[56]:
array([[1, 2],
[3, 4]])
но вы можете перенести его:
In [57]: np.vstack((b0,b1)).T
Out[57]:
array([[1, 3],
[2, 4]])
stack
- конкатенатор более общего назначения
In [58]: np.stack((b0,b1), axis=1)
Out[58]:
array([[1, 3],
[2, 4]])
или с:
In [59]: np.column_stack((b0,b1))
Out[59]:
array([[1, 3],
[2, 4]])
Подробнее о комбинировании массивов в моем другом недавнем ответе: https://stackoverflow.com/a/56159553/901925
Все это, включая np.append
, использует np.concatenate
, просто сначала изменяя размеры различными способами. np.append
часто используется не по назначению. Это не клон добавления в список. Ни один из них не должен использоваться повторно в цикле. Каждый раз они создают новый массив, что не очень эффективно.