Spec-Zone.ru › NumPy 1.19

numpy.ma.array

numpy.ma.array(data, dtype=None, copy=False, order=None, mask=False, fill_value=None, keep_mask=True, hard_mask=False, shrink=True, subok=True, ndmin=0) [source]

Класс массива с возможностью маскирования значений.

Маскированные значения True исключают соответствующий элемент из любого вычисления.

Создание:

x = MaskedArray(data, mask=nomask, dtype=None, copy=False, subok=True,
                ndmin=0, fill_value=None, keep_mask=True, hard_mask=None,
                shrink=True, order=None)
Параметры
dataarray_like

Входные данные.

masksequence, optional

Маска. Должна быть преобразуема в массив булевых значений с той же формой, что и data. Значение True указывает на маскированные (т.е. недопустимые) данные.

dtypedtype, optional

Тип данных выходного значения. Если dtype равно None, используется тип данных аргумента данных (data.dtype). Если dtype не равно None и отличается от data.dtype, выполняется копирование.

copybool, optional

Следует ли копировать входные данные (True), или использовать ссылку вместо этого. По умолчанию False.

subokbool, optional

Следует ли возвращать подкласс MaskedArray, если это возможно (True), или обычный MaskedArray. По умолчанию True.

ndminint, optional

Минимальное число измерений. По умолчанию 0.

fill_valuescalar, optional

Значение, используемое для заполнения маскированных значений при необходимости. Если None, используется значение по умолчанию, основанное на типе данных.

keep_maskbool, optional

Следует ли объединять mask с маской входных данных, если таковая имеется (True), или использовать только mask для выходных данных (False). По умолчанию True.

hard_maskbool, optional

Использовать жёсткую маску или нет. При использовании жёсткой маски маскированные значения нельзя размаскировать. По умолчанию False.

shrinkbool, optional

Принудительно сжимать пустую маску. По умолчанию True.

order{‘C’, ‘F’, ‘A’}, optional

Укажите порядок массива. Если порядок ‘C’, массив будет в порядке C-contiguous (последний индекс изменяется быстрее). Если порядок ‘F’, возвращаемый массив будет в порядке Fortran-contiguous (первый индекс изменяется быстрее). Если порядок ‘A’ (по умолчанию), возвращаемый массив может быть в любом порядке (C-, Fortran-contiguous или даже несмежный), если не требуется копия, в противном случае он будет C-contiguous.

Примеры

Массив можно инициализировать массивом булевых значений с той же формой, что и data.

>>> data = np.arange(6).reshape((2, 3))
>>> np.ma.MaskedArray(data, mask=[[False, True, False],
...                               [False, False, True]])
masked_array(
  data=[[0, --, 2],
        [3, 4, --]],
  mask=[[False,  True, False],
        [False, False,  True]],
  fill_value=999999)

В качестве альтернативы, массив можно инициализировать однородным булевым массивом с той же формой, что и data, передав скалярное булевое значение:

>>> np.ma.MaskedArray(data, mask=False)
masked_array(
  data=[[0, 1, 2],
        [3, 4, 5]],
  mask=[[False, False, False],
        [False, False, False]],
  fill_value=999999)
>>> np.ma.MaskedArray(data, mask=True)
masked_array(
  data=[[--, --, --],
        [--, --, --]],
  mask=[[ True,  True,  True],
        [ True,  True,  True]],
  fill_value=999999,
  dtype=int64)

Примечание

Рекомендуемая практика инициализации mask скалярным булевым значением — использование True/False вместо np.True_/np.False_. Причина в том, что nomask представлено внутри как np.False_.

>>> np.False_ is np.ma.nomask
True

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.ma.array.html

Spec-Zone.ru

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