numpy.ma.squeeze#
- ma.сжать(a, ось=None, *, fill_value=None, hardmask=False)[источник]#
Удалить оси длиной один из a.
- Параметры:
- aarray_like
Входные данные.
- осьNone или int или кортеж ints, опционально
Выбирает подмножество записей длины один в форме. Если выбрана ось с записью формы больше одного, возникает ошибка.
- Возвращает:
- сжатыйMaskedArray
Входной массив, но со всеми или подмножеством измерений длины 1 удалёнными. Это всегда a сам или представление в a. Обратите внимание, что если все оси сжаты, результатом будет массив 0d, а не скаляр.
- Вызывает:
- ValueError
Если ось не является None, и сжимаемая ось не имеет длины 1
Смотрите также
expand_dimsОбратная операция, добавление записей длины один
reshapeВставка, удаление и объединение размерностей, а также изменение размера существующих
Примеры
>>> import numpy as np >>> 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) >>> x = np.array([[1234]]) >>> x.shape (1, 1) >>> np.squeeze(x) array(1234) # 0d array >>> np.squeeze(x).shape () >>> np.squeeze(x)[()] 1234