#### Previous topic

numpy.expand_dims

#### Next topic

numpy.asfarray

# numpy.squeeze

`numpy.``squeeze`(a, axis=None)

  Remove single-dimensional entries from the shape of an array.

  Parameters: | a : array_like Input data. axis : None or int or tuple of ints, optional New in version 1.7.0. 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 : ndarray The input array, but with all or a subset of the dimensions of length 1 removed. This is always a itself or a view into a.
  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

      >>> x = np.array([[[0], [1], [2]]])
      >>> x.shape
      (1, 3, 1)
      >>> np.squeeze(x).shape
      (3,)
      >>> np.squeeze(x, axis=0).shape
      (3, 1)
      >>> np.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
      >>> np.squeeze(x, axis=2).shape
      (1, 3)