mxnet.ndarray.slice_like¶
-
mxnet.ndarray.
slice_like
(data=None, shape_like=None, axes=_Null, out=None, name=None, **kwargs)¶ Slices a region of the array like the shape of another array.
This function is similar to
slice
, however, the begin are always 0`s and `end of specific axes are inferred from the second input shape_like.Given the second shape_like input of
shape=(d_0, d_1, ..., d_n-1)
, aslice_like
operator with default empty axes, it performs the following operation:`` out = slice(input, begin=(0, 0, …, 0), end=(d_0, d_1, …, d_n-1))``.
When axes is not empty, it is used to speficy which axes are being sliced.
Given a 4-d input data,
slice_like
operator withaxes=(0, 2, -1)
will perform the following operation:`` out = slice(input, begin=(0, 0, 0, 0), end=(d_0, None, d_2, d_3))``.
Note that it is allowed to have first and second input with different dimensions, however, you have to make sure the axes are specified and not exceeding the dimension limits.
For example, given input_1 with
shape=(2,3,4,5)
and input_2 withshape=(1,2,3)
, it is not allowed to use:`` out = slice_like(a, b)`` because ndim of input_1 is 4, and ndim of input_2 is 3.
The following is allowed in this situation:
`` out = slice_like(a, b, axes=(0, 2))``
Example:
x = [[ 1., 2., 3., 4.], [ 5., 6., 7., 8.], [ 9., 10., 11., 12.]] y = [[ 0., 0., 0.], [ 0., 0., 0.]] slice_like(x, y) = [[ 1., 2., 3.] [ 5., 6., 7.]] slice_like(x, y, axes=(0, 1)) = [[ 1., 2., 3.] [ 5., 6., 7.]] slice_like(x, y, axes=(0)) = [[ 1., 2., 3., 4.] [ 5., 6., 7., 8.]] slice_like(x, y, axes=(-1)) = [[ 1., 2., 3.] [ 5., 6., 7.] [ 9., 10., 11.]]
Defined in src/operator/tensor/matrix_op.cc:L626
- Parameters
data (NDArray) – Source input
shape_like (NDArray) – Shape like input
axes (Shape(tuple), optional, default=[]) – List of axes on which input data will be sliced according to the corresponding size of the second input. By default will slice on all axes. Negative axes are supported.
out (NDArray, optional) – The output NDArray to hold the result.
- Returns
out – The output of this function.
- Return type
NDArray or list of NDArrays