I feel like there is some documentation I am missing, but I can\'t find anything on this specific example - everything is just about concatenating or stacking arrays.
I
If you have two-dimensional matrices, you can use numpy.dstack():
z = np.dstack((x, y))
In [39]: z = np.concatenate((x[...,None], y[...,None]), axis=2)
In [40]: z
Out[40]:
array([[[ 1, 7],
[ 2, 8],
[ 3, 9]],
[[ 4, 10],
[ 5, 11],
[ 6, 12]]])
Sounds like the function you're looking for is stack()
, using it to stack along the 3rd dimension.
import numpy as np
x = np.asarray([[1,2,3],[4,5,6]])
y = np.asarray([[7,8,9],[10,11,12]])
z = np.stack((x, y), 2)