dpnp.unstack
- dpnp.unstack(x, /, *, axis=0)[source]
Split an array into a sequence of arrays along the given axis.
The axis parameter specifies the dimension along which the array will be split. For example, if
axis=0
(the default) it will be the first dimension and ifaxis=-1
it will be the last dimension.The result is a tuple of arrays split along axis.
For full documentation refer to
numpy.unstack
.- Parameters:
x ({dpnp.ndarray, usm_ndarray}) -- The array to be unstacked.
axis (int, optional) -- Axis along which the array will be split. Default:
0
.
- Returns:
unstacked -- The unstacked arrays.
- Return type:
tuple of dpnp.ndarray
See also
dpnp.stack
Join a sequence of arrays along a new axis.
dpnp.concatenate
Join a sequence of arrays along an existing axis.
dpnp.block
Assemble an ndarray from nested lists of blocks.
dpnp.split
Split array into a list of multiple sub-arrays of equal size.
Notes
dpnp.unstack
serves as the reverse operation ofdpnp.stack
, i.e.,dpnp.stack(dpnp.unstack(x, axis=axis), axis=axis) == x
.This function is equivalent to
tuple(dpnp.moveaxis(x, axis, 0))
, since iterating on an array iterates along the first axis.Examples
>>> import dpnp as np >>> arr = np.arange(24).reshape((2, 3, 4)) >>> np.unstack(arr) (array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]), array([[12, 13, 14, 15], [16, 17, 18, 19], [20, 21, 22, 23]]))
>>> np.unstack(arr, axis=1) (array([[ 0, 1, 2, 3], [12, 13, 14, 15]]), array([[ 4, 5, 6, 7], [16, 17, 18, 19]]), array([[ 8, 9, 10, 11], [20, 21, 22, 23]]))
>>> arr2 = np.stack(np.unstack(arr, axis=1), axis=1) >>> arr2.shape (2, 3, 4) >>> np.all(arr == arr2) array(True)