Spec-Zone.ru › NumPy 1.20

Постоянные значения модуля numpy.ma

Помимо класса MaskedArray, модуль numpy.ma определяет несколько констант.

numpy.ma.masked

Константа masked является особым случаем MaskedArray с плавающей точкой и нулевой формой. Она используется для проверки, замаскирован ли определённый элемент массива, или для маскирования одного или нескольких элементов массива:

>>> x = ma.array([1, 2, 3], mask=[0, 1, 0])
>>> x[1] is ma.masked
True
>>> x[-1] = ma.masked
>>> x
masked_array(data=[1, --, --],
             mask=[False,  True,  True],
       fill_value=999999)
numpy.ma.nomask

Значение, указывающее, что массив не содержит недействительных элементов. nomask используется во внутреннем коде для ускорения вычислений, когда маска не требуется. Внутренне он представляется как np.False_.

numpy.ma.masked_print_options

Строка, используемая вместо отсутствующих данных при выводе массива. По умолчанию эта строка равна '--'.

Класс MaskedArray

class numpy.ma.MaskedArray [source]

Подкласс ndarray, предназначенный для работы с числовыми массивами, содержащими пропущенные данные.

Экземпляр MaskedArray можно рассматривать как комбинацию нескольких элементов:

  • Данные data в виде обычного numpy.ndarray любой формы или типа данных (сами данные).
  • Логическая маска mask той же формы, что и данные, где значение True указывает на то, что соответствующий элемент данных недействителен. Также допустимо специальное значение nomask для массивов без именованных полей, указывающее, что нет недействительных данных.
  • Значение заполнения fill_value, которое может быть использовано для замены недействительных элементов с целью получения стандартного numpy.ndarray.

Атрибуты и свойства массив

См. также

Атрибуты массивов

MaskedArray.data

Возвращает основоположенные данные как представление массива.

Если основоположенные данные являются подклассом numpy.ndarray, он возвращается как таковой.

>>> x = np.ma.array(np.matrix([[1, 2], [3, 4]]), mask=[[0, 1], [1, 0]])
>>> x.data
matrix([[1, 2],
        [3, 4]])

Тип данных можно получить через атрибут baseclass.

MaskedArray.mask

Текущая маска.

MaskedArray.recordmask

Получение или установка маски массива, если у него нет именованных полей. Для структурированных массивов возвращает массив булевых значений, где элементы равны True если все поля замаскированы, False в противном случае:

>>> x = np.ma.array([(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)],
...         mask=[(0, 0), (1, 0), (1, 1), (0, 1), (0, 0)],
...        dtype=[('a', int), ('b', int)])
>>> x.recordmask
array([False, False,  True, False, False])
MaskedArray.fill_value

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

Примеры

>>> for dt in [np.int32, np.int64, np.float64, np.complex128]:
...     np.ma.array([0, 1], dtype=dt).get_fill_value()
...
999999
999999
1e+20
(1e+20+0j)
>>> x = np.ma.array([0, 1.], fill_value=-np.inf)
>>> x.fill_value
-inf
>>> x.fill_value = np.pi
>>> x.fill_value
3.1415926535897931 # may vary

Сброс к значению по умолчанию:

>>> x.fill_value = None
>>> x.fill_value
1e+20
MaskedArray.baseclass

Класс основоположенных данных (только для чтения).

MaskedArray.sharedmask

Статус совместного использования маски (только для чтения).

MaskedArray.hardmask

Жесткость маски

Поскольку MaskedArray является подклассом ndarray, массив также наследует все атрибуты и свойства экземпляра ndarray.

MaskedArray.base

Объект-основа, если память взята из другого объекта.

MaskedArray.ctypes

Объект для упрощения взаимодействия массива с модулем ctypes.

MaskedArray.dtype

Тип данных элементов массива.

MaskedArray.flags

Информация о расположении памяти массива.

MaskedArray.itemsize

Длина одного элемента массива в байтах.

MaskedArray.nbytes

Общее количество байт, занимаемых элементами массива.

MaskedArray.ndim

Количество измерений массива.

MaskedArray.shape

Кортеж измерений массива.

MaskedArray.size

Количество элементов в массиве.

MaskedArray.strides

Кортеж байтов, которые нужно переместить в каждом измерении при обходе массива.

MaskedArray.imag

Мнимая часть массива.

MaskedArray.real

Вещественная часть массива.

MaskedArray.flat

Возвращает итератор по плоскому массиву, или задаёт плоское представление массива для присвоения значения.

MaskedArray.__array_priority__

Методы MaskedArray

См. также

Методы массивов

Преобразование

MaskedArray.__float__()

Преобразование в тип float.

MaskedArray.__int__()

Преобразование в тип int.

MaskedArray.view([dtype, type, fill_value])

Возвращает представление данных MaskedArray.

MaskedArray.astype(dtype[, order, casting, …])

Копия массива, преобразованная к указанному типу.

MaskedArray.byteswap([inplace])

Перестановка байтов элементов массива.

MaskedArray.compressed()

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

MaskedArray.filled([fill_value])

Возвращает копию self, с замаскированными значениями, заполненными заданным значением.

MaskedArray.tofile(fid[, sep, format])

Сохранение маскированного массива в файл в двоичном формате.

MaskedArray.toflex()

Преобразование маскированного массива в массив гибкого типа.

MaskedArray.tolist([fill_value])

Возвращает часть данных маскированного массива в виде иерархического списка Python.

MaskedArray.torecords()

Преобразование маскированного массива в массив гибкого типа.

MaskedArray.tostring([fill_value, order])

Alias для tobytes, с точно таким же поведением.

MaskedArray.tobytes([fill_value, order])

Возвращает данные массива в виде строки, содержащей сырые байты в массиве.

Обработка формы

Для reshape, resize и transpose, единственный кортеж аргументов может быть заменён на n целых числа, которые будут интерпретированы как n-кортеж.

MaskedArray.flatten([order])

Возвращает копию массива, свёрнутую в одну размерность.

MaskedArray.ravel([order])

Возвращает одномерную версию self как представление.

MaskedArray.reshape(*s, **kwargs)

Придание новой формы массиву без изменения его данных.

MaskedArray.resize(newshape[, refcheck, order])

MaskedArray.squeeze([axis])

Удаление осей длиной один из a.

MaskedArray.swapaxes(axis1, axis2)

Возвращает представление массива с осями axis1 и axis2, поменявшими местами.

MaskedArray.transpose(*axes)

Возвращает представление массива с переставленными осями.

MaskedArray.T

Выбор и обработка элементов

Для методов массива, принимающих ключевое слово axis, оно по умолчанию равно None. Если ось равна None, то массив обрабатывается как одномерный массив. Любое другое значение для axis представляет размерность, вдоль которой должна происходить операция.

MaskedArray.argmax([axis, fill_value, out])

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

MaskedArray.argmin([axis, fill_value, out])

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

MaskedArray.argsort([axis, kind, order, …])

Возвращает массив индексов, сортирующих массив вдоль указанной оси.

MaskedArray.choose(choices[, out, mode])

Используйте массив индексов для построения нового массива из набора вариантов.

MaskedArray.compress(condition[, axis, out])

Возвращает a, где условие True.

MaskedArray.diagonal([offset, axis1, axis2])

Возвращает указанные диагонали.

MaskedArray.fill(value)

Заполняет массив скалярным значением.

MaskedArray.item(*args)

Копирует элемент массива в стандартный скаляр Python и возвращает его.

MaskedArray.nonzero()

Возвращает индексы незамаскированных элементов, которые не равны нулю.

MaskedArray.put(indices, values[, mode])

Устанавливает значения по указанным индексам.

MaskedArray.repeat(repeats[, axis])

Повторяет элементы массива.

MaskedArray.searchsorted(v[, side, sorter])

Находит индексы, куда элементы v должны быть вставлены для сохранения порядка.

MaskedArray.sort([axis, kind, order, …])

Сортирует массив на месте.

MaskedArray.take(indices[, axis, out, mode])

Сериализация и копирование

MaskedArray.copy([order])

Возвращает копию массива.

MaskedArray.dump(file)

Сериализует массив в указанный файл.

MaskedArray.dumps()

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

Вычисления

MaskedArray.all([axis, out, keepdims])

Возвращает True, если все элементы имеют значение True.

MaskedArray.anom([axis, dtype])

Вычисляет аномалии (отклонения от среднего арифметического) по заданной оси.

MaskedArray.any([axis, out, keepdims])

Возвращает True, если любой из элементов a имеет значение True.

MaskedArray.clip([min, max, out])

Возвращает массив, значения которого ограничены [min, max].

MaskedArray.conj()

Вычисляет комплексно-сопряжённые значения всех элементов.

MaskedArray.conjugate()

Возвращает комплексно-сопряжённые значения элементов.

MaskedArray.cumprod([axis, dtype, out])

Возвращает кумулятивное произведение элементов массива по заданной оси.

MaskedArray.cumsum([axis, dtype, out])

Возвращает кумулятивную сумму элементов массива по заданной оси.

MaskedArray.max([axis, out, fill_value, …])

Возвращает максимальное значение по заданной оси.

MaskedArray.mean([axis, dtype, out, keepdims])

Возвращает среднее значение элементов массива по заданной оси.

MaskedArray.min([axis, out, fill_value, …])

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

MaskedArray.prod([axis, dtype, out, keepdims])

Возвращает произведение элементов массива по заданной оси.

MaskedArray.product([axis, dtype, out, keepdims])

Возвращает произведение элементов массива по заданной оси.

MaskedArray.ptp([axis, out, fill_value, …])

Возвращает разницу между максимальным и минимальным значениями по заданной оси (т.е.

MaskedArray.round([decimals, out])

Возвращает каждый элемент, округлённый до заданного числа десятичных знаков.

MaskedArray.std([axis, dtype, out, ddof, …])

Возвращает стандартное отклонение элементов массива по заданной оси.

MaskedArray.sum([axis, dtype, out, keepdims])

Возвращает сумму элементов массива по заданной оси.

MaskedArray.trace([offset, axis1, axis2, …])

Возвращает сумму по диагоналям массива.

MaskedArray.var([axis, dtype, out, ddof, …])

Вычисляет дисперсию по указанной оси.

Арифметические и сравнительные операции

Операторы сравнения:

MaskedArray.__lt__(value, /)

Возвращает self<value.

MaskedArray.__le__(value, /)

Возвращает self<=value.

MaskedArray.__gt__(value, /)

Возвращает self>value.

MaskedArray.__ge__(value, /)

Возвращает self>=value.

MaskedArray.__eq__(other)

Проверяет, равны ли элементы other и self.

MaskedArray.__ne__(other)

Проверяет, не равны ли элементы other и self.

Логическое значение массива (bool()):

MaskedArray.__bool__(/)

self != 0

Арифметика:

MaskedArray.__abs__(self)

MaskedArray.__add__(other)

Добавить self к other и вернуть новую маску массива.

MaskedArray.__radd__(other)

Добавить other к self и вернуть новую маску массива.

MaskedArray.__sub__(other)

Вычесть other из self и вернуть новую маску массива.

MaskedArray.__rsub__(other)

Вычесть self из other и вернуть новую маску массива.

MaskedArray.__mul__(other)

Умножить self на other и вернуть новую маску массива.

MaskedArray.__rmul__(other)

Умножить other на self и вернуть новую маску массива.

MaskedArray.__div__(other)

Разделить self на other и вернуть новую маску массива.

MaskedArray.__truediv__(other)

Разделить self на other и вернуть новую маску массива.

MaskedArray.__rtruediv__(other)

Разделить other на self и вернуть новую маску массива.

MaskedArray.__floordiv__(other)

Разделить self на other и вернуть новую маску массива.

MaskedArray.__rfloordiv__(other)

Разделить other на self и вернуть новую маску массива.

MaskedArray.__mod__(value, /)

Возвращает self%value.

MaskedArray.__rmod__(value, /)

Возвращает value%self.

MaskedArray.__divmod__(value, /)

Возвращает divmod(self, value).

MaskedArray.__rdivmod__(value, /)

Возвращает divmod(value, self).

MaskedArray.__pow__(other)

Возвести self в степень other, маскируя потенциальные NaN/бесконечности.

MaskedArray.__rpow__(other)

Возвести other в степень self, маскируя потенциальные NaN/бесконечности.

MaskedArray.__lshift__(value, /)

Возвращает self<<value.

MaskedArray.__rlshift__(value, /)

Возвращает value<<self.

MaskedArray.__rshift__(value, /)

Возвращает self>>value.

MaskedArray.__rrshift__(value, /)

Возвращает value>>self.

MaskedArray.__and__(value, /)

Возвращает self&value.

MaskedArray.__rand__(value, /)

Возвращает value&self.

MaskedArray.__or__(value, /)

Возвращает self|value.

MaskedArray.__ror__(value, /)

Возвращает value|self.

MaskedArray.__xor__(value, /)

Возвращает self^value.

MaskedArray.__rxor__(value, /)

Возвращает value^self.

Арифметические операции на месте:

MaskedArray.__iadd__(other)

Добавить other к self на месте.

MaskedArray.__isub__(other)

Вычесть other из self на месте.

MaskedArray.__imul__(other)

Умножить self на other на месте.

MaskedArray.__idiv__(other)

Разделить self на other на месте.

MaskedArray.__itruediv__(other)

Деление с плавающей точкой self на other на месте.

MaskedArray.__ifloordiv__(other)

Целочисленное деление self на other на месте.

MaskedArray.__imod__(value, /)

Возвращает self%=value.

MaskedArray.__ipow__(other)

Возвести self в степень other на месте.

MaskedArray.__ilshift__(value, /)

Возвращает self<<=value.

MaskedArray.__irshift__(value, /)

Возвращает self>>=value.

MaskedArray.__iand__(value, /)

Возвращает self&=value.

MaskedArray.__ior__(value, /)

Возвращает self|=value.

MaskedArray.__ixor__(value, /)

Возвращает self^=value.

Представление

MaskedArray.__repr__()

Строковое представление в виде литерала.

MaskedArray.__str__()

Возвращает str(self).

MaskedArray.ids()

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

MaskedArray.iscontiguous()

Возвращает булево значение, указывающее, являются ли данные непрерывными.

Специальные методы

Для стандартных функций библиотеки:

MaskedArray.__copy__()

Используется, если на массив применяется copy.copy.

MaskedArray.__deepcopy__(memo, /)

Используется, если на массив применяется copy.deepcopy.

MaskedArray.__getstate__()

Возвращает внутреннее состояние маскированного массива для целей сериализации.

MaskedArray.__reduce__()

Возвращает кортеж из 3 элементов для сериализации MaskedArray.

MaskedArray.__setstate__(state)

Восстанавливает внутреннее состояние маскированного массива для целей сериализации.

Основные настройки:

MaskedArray.__new__(cls[, data, mask, …])

Создает новый маскированный массив с нуля.

MaskedArray.__array__([dtype], /)

Возвращает либо новую ссылку на себя, если dtype не задан, либо новый массив заданного типа данных, если dtype отличается от текущего типа данных массива.

MaskedArray.__array_wrap__(obj[, context])

Специальный обработчик для функций ufuncs.

Настройка контейнера: (см. Индексирование)

MaskedArray.__len__(/)

Возвращает len(self).

MaskedArray.__getitem__(indx)

x.__getitem__(y) <==> x[y]

MaskedArray.__setitem__(indx, value)

x.__setitem__(i, y) <==> x[i]=y

MaskedArray.__delitem__(key, /)

Удаляет self[key].

MaskedArray.__contains__(key, /)

Возвращает key in self.

Конкретные методы

Обработка маски

Следующие методы могут использоваться для доступа к информации о маске или для манипулирования ей.

MaskedArray.__setmask__(mask[, copy])

Устанавливает маску.

MaskedArray.harden_mask()

Принудительно устанавливает маску в жесткий режим.

MaskedArray.soften_mask()

Принудительно устанавливает маску в мягкий режим.

MaskedArray.unshare_mask()

Копирует маску и устанавливает флаг sharedmask в False.

MaskedArray.shrink_mask()

Уменьшает маску до nomask, если это возможно.

Обработка значения заполнения

fill_value

MaskedArray.get_fill_value()

Значение заполнения маскированного массива — скаляр.

MaskedArray.set_fill_value([value])

Подсчет отсутствующих элементов

MaskedArray.count([axis, keepdims])

Подсчитывает количество элементов массива, не замаскированных вдоль заданной оси.

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/maskedarray.baseclass.html

Spec-Zone.ru

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