# numpy.dstack¶

`numpy.``dstack`(tup)[source]

Stack arrays in sequence depth wise (along third axis).

This is equivalent to concatenation along the third axis after 2-D arrays of shape (M,N) have been reshaped to (M,N,1) and 1-D arrays of shape (N,) have been reshaped to (1,N,1). Rebuilds arrays divided by `dsplit`.

This function makes most sense for arrays with up to 3 dimensions. For instance, for pixel-data with a height (first axis), width (second axis), and r/g/b channels (third axis). The functions `concatenate`, `stack` and `block` provide more general stacking and concatenation operations.

Parameters: tup : sequence of arrays The arrays must have the same shape along all but the third axis. 1-D or 2-D arrays must have the same shape. stacked : ndarray The array formed by stacking the given arrays, will be at least 3-D.

`stack`
Join a sequence of arrays along a new axis.
`vstack`
Stack along first axis.
`hstack`
Stack along second axis.
`concatenate`
Join a sequence of arrays along an existing axis.
`dsplit`
Split array along third axis.

Examples

```>>> a = np.array((1,2,3))
>>> b = np.array((2,3,4))
>>> np.dstack((a,b))
array([[[1, 2],
[2, 3],
[3, 4]]])
```
```>>> a = np.array([,,])
>>> b = np.array([,,])
>>> np.dstack((a,b))
array([[[1, 2]],
[[2, 3]],
[[3, 4]]])
```

#### Previous topic

numpy.column_stack

numpy.hstack