/NumPy 1.17

# numpy.compress

`numpy.compress(condition, a, axis=None, out=None)` [source]

Return selected slices of an array along given axis.

When working along a given axis, a slice along that axis is returned in `output` for each index where `condition` evaluates to True. When working on a 1-D array, `compress` is equivalent to `extract`.

Parameters: `condition : 1-D array of bools` Array that selects which entries to return. If len(condition) is less than the size of `a` along the given axis, then output is truncated to the length of the condition array. `a : array_like` Array from which to extract a part. `axis : int, optional` Axis along which to take slices. If None (default), work on the flattened array. `out : ndarray, optional` Output array. Its type is preserved and it must be of the right shape to hold the output. `compressed_array : ndarray` A copy of `a` without the slices along axis for which `condition` is false.

See also

`ndarray.compress`
Equivalent method in ndarray
`np.extract`
Equivalent method when working on 1-D arrays
`numpy.doc.ufuncs`
Section “Output arguments”

#### Examples

```>>> a = np.array([[1, 2], [3, 4], [5, 6]])
>>> a
array([[1, 2],
[3, 4],
[5, 6]])
>>> np.compress([0, 1], a, axis=0)
array([[3, 4]])
>>> np.compress([False, True, True], a, axis=0)
array([[3, 4],
[5, 6]])
>>> np.compress([False, True], a, axis=1)
array([,
,
])
```

Working on the flattened array does not return slices along an axis but selects elements.

```>>> np.compress([False, True], a)
array()
```

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.17.0/reference/generated/numpy.compress.html