Использование numpy.concatenate()
или numpy.append()
:
np.concatenate((np_a[None,:],np_b[None,:]), axis=0)
или
np.append(np_a[None,:],np_b[None,:], axis=0)
Выход (в любом случае):
array([[ 1, 2, 3, 4, 5],
[ 2, 4, 6, 8, 10]])
Теперь мы преобразуем каждый массив в массив 2-й, прежде чем объединять их оба.
И, объединяя или добавляя их, мы указываем, что объединение или добавление должно происходить вдоль axis=0
(первая ось) входных массивов.
Обратите внимание, что numpy.concatenate()
и numpy.append()
не создают никакого нового измерения.Они просто объединяются или добавляются вдоль существующего измерения, когда вы явно указываете аргумент axis
.
Если мы не указываем аргумент axis
, поведение по умолчанию numpy.concatenate()
и numpy.append()
,состоит в том, чтобы сгладить входные массивы, а также вернуть уплощенный массив.
Использование numpy.stack ():
np.stack ((np_a, np_b))
Это также дает:1035 *
array([[ 1, 2, 3, 4, 5],
[ 2, 4, 6, 8, 10]])
Здесь нам не нужно предварительно преобразовывать в 2-й.Новое измерение будет создано самой операцией стека.
Обратите внимание, что numpy.stack()
также принимает аргумент axis
, но по умолчанию он равен 0, что нам и нужно.
Такжеобратите внимание, что в случае numpy.stack()
значение, которое мы указываем для аргумента axis
, относится к массиву результатов (который имеет одно дополнительное измерение), а не к исходным входным массивам.