Python, как можно сложить 2D массив в 3D массив - PullRequest
0 голосов
/ 17 апреля 2020

Теперь у меня есть массив 3D (c) и массив 2D (b), я хочу создать новый массив 3D (d), что мне делать? :

c=np.array([[[1, 2, 3],[2, 3, 4]],[[1, 2, 3],[2, 3, 4]]])
c.shape
(2, 2, 3)
a=np.array([[1, 2, 3],[2, 3, 4]])
a.shape
(2, 3)

d=np.array([[[1, 2, 3],[2, 3, 4]],[[1, 2, 3],[2, 3, 4]],[[1,2,3],[1,2,3]]])
d.shape
(3, 2, 3)

Ответы [ 2 ]

1 голос
/ 17 апреля 2020

Сначала вам нужно reshape один из них, затем вы можете использовать vstack или dstack в зависимости от того, какой из них вы хотите использовать. Например я использую dstack:

c = c.reshape((2, 3, 2))
np.dstack((c, a)).shape
0 голосов
/ 17 апреля 2020

я решил это. b.reshape (1,2,3), затем d = np.vstack ((c, b))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...