Skip to main content
`Ctrl`+`K`

# numpy.ma.compress_rowcols

ma.compress_rowcols(x, axis=None)

  Suppress the rows and/or columns of a 2-D array that contain masked values.

  The suppression behavior is selected with the axis parameter.

  - If axis is None, both rows and columns are suppressed.

  - If axis is 0, only rows are suppressed.

  - If axis is 1 or -1, only columns are suppressed.

  Parameters:
    x array_like, MaskedArray

      The array to operate on. If not a MaskedArray instance (or if no array elements are masked), x is interpreted as a MaskedArray with mask set to `nomask`. Must be a 2D array.

    axis int, optional

      Axis along which to perform the operation. Default is None.

  Returns:
    compressed_array ndarray

      The compressed array.

  Examples

      >>> import numpy as np
      >>> x = np.ma.array(np.arange(9).reshape(3, 3), mask=[[1, 0, 0],
      ...                                                   [1, 0, 0],
      ...                                                   [0, 0, 0]])
      >>> x
      masked_array(
        data=[[--, 1, 2],
              [--, 4, 5],
              [6, 7, 8]],
        mask=[[ True, False, False],
              [ True, False, False],
              [False, False, False]],
        fill_value=999999)

      >>> np.ma.compress_rowcols(x)
      array([[7, 8]])
      >>> np.ma.compress_rowcols(x, 0)
      array([[6, 7, 8]])
      >>> np.ma.compress_rowcols(x, 1)
      array([[1, 2],
             [4, 5],
             [7, 8]])