mars.tensor.squeeze#

mars.tensor.squeeze(a, axis=None)[source]#

Remove single-dimensional entries from the shape of a tensor.

Parameters
  • a (array_like) – Input data.

  • axis (None or int or tuple of ints, optional) – Selects a subset of the single-dimensional entries in the shape. If an axis is selected with shape entry greater than one, an error is raised.

Returns

squeezed – The input tensor, but with all or a subset of the dimensions of length 1 removed. This is always a itself or a view into a.

Return type

Tensor

Raises

ValueError – If axis is not None, and an axis being squeezed is not of length 1

See also

expand_dims

The inverse operation, adding singleton dimensions

reshape

Insert, remove, and combine dimensions, and resize existing ones

Examples

>>> import mars.tensor as mt
>>> x = mt.array([[[0], [1], [2]]])
>>> x.shape
(1, 3, 1)
>>> mt.squeeze(x).shape
(3,)
>>> mt.squeeze(x, axis=0).shape
(3, 1)
>>> mt.squeeze(x, axis=1).shape
Traceback (most recent call last):
...
ValueError: cannot select an axis to squeeze out which has size not equal to one
>>> mt.squeeze(x, axis=2).shape
(1, 3)