Spec-Zone.ru › NumPy 1.14

numpy.compress

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

Возвращает выбранные срезы массива вдоль заданной оси.

При работе вдоль заданной оси срез вдоль этой оси возвращается в output для каждого индекса, где condition принимает значение True. При работе с одномерным массивом, compress эквивалентно extract.

Параметры:

condition : 1-D массив булевых значений

Массив, который выбирает, какие элементы нужно вернуть. Если длина condition меньше размера a вдоль заданной оси, то выходные данные усекаются до длины массива condition.

a : array_like

Массив, из которого нужно извлечь часть.

axis : int, необязательно

Ось, вдоль которой брать срезы. Если None (по умолчанию), то работает с уплощенным массивом.

out : ndarray, необязательно

Массив вывода. Его тип сохраняется, и он должен иметь правильную форму для хранения результата.

Возвращает:

compressed_array : ndarray

Копия a без срезов вдоль оси, для которой condition ложно.

См. также

take, choose, diag, diagonal, select

ndarray.compress
Эквивалентный метод в ndarray
np.extract
Эквивалентный метод при работе с одномерными массивами
numpy.doc.ufuncs
Раздел «Аргументы вывода»

Примеры

>>> 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([[2],
       [4],
       [6]])

Работа с уплощенным массивом не возвращает срезы вдоль оси, а выбирает элементы.

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

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API