Так один массив имеет 2 размеры, другой 1:
(129873, 12)
(129873,)
Вам нужно изменить 2-ую форму, чтобы иметь форму (129873,1)
. Затем вы можете конкатенатировать по оси 1.
Существует несколько способов сделать это. [:,None]
или np.newaxis
индексации моя любимая:
In [648]: A=np.ones((3,4),int)
In [649]: B=np.ones((3,),int)
In [650]: B[:,None].shape
Out[650]: (3, 1)
In [651]: np.concatenate((A,B[:,None]),axis=1).shape
Out[651]: (3, 5)
B.reshape(-1,1)
также работает. Также np.atleast_2d(B).T
и np.expand_dims(B,1)
.
np.column_stack((A,B))
использует np.array(arr, copy=False, subok=True, ndmin=2).T
, чтобы гарантировать, что каждый массив имеет правильное количество измерений.
Несмотря на то, что имеются обложки concatenate
, например column_stack
, важно знать, как напрямую изменять размеры.