Константы модуля numpy.ma
Помимо класса MaskedArray, модуль numpy.ma определяет несколько констант.
-
numpy.ma.masked -
Константа
masked— это специальный случайMaskedArrayс типом данных float и нулевой формой. Она используется для проверки, является ли конкретный элемент массива маскированным, или для маскирования одного или нескольких элементов массива:>>> 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используется внутри для ускорения вычислений, когда маска не требуется.
-
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 = ma.array(np.matrix([[1, 2], [3, 4]]), mask=[[0, 1], [1, 0]]) >>> x.data matrix([[1, 2], [3, 4]])Тип данных можно получить через атрибут
baseclass.
-
MaskedArray.mask -
Возвращает исходную маску в виде массива с такой же формой и структурой, что и данные, но все поля являются атомарными булевыми значениями. Значение
Trueуказывает на недействительный элемент.
-
MaskedArray.recordmask -
Возвращает маску массива, если он не имеет именованных полей. Для структурированных массивов возвращает массив булевых значений, где элементы равны
Trueесли все поля маскированы,Falseв противном случае:>>> x = 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], dtype=bool)
-
MaskedArray.fill_value -
Возвращает значение, используемое для заполнения недействительных элементов массива. Значение является скаляром (если массив не имеет именованных полей) или 0-мерным массивом с таким же
dtype, как и массив, если он имеет именованные поля.Значение по умолчанию для заполнения зависит от типа данных массива:
тип данных значение по умолчанию bool True int 999999 float 1.e20 complex 1.e20+0j object ‘?’ string ‘N/A’
-
MaskedArray.baseclass -
Возвращает класс базовых данных.
>>> x = ma.array(np.matrix([[1, 2], [3, 4]]), mask=[[0, 0], [1, 0]]) >>> x.baseclass <class 'numpy.matrixlib.defmatrix.matrix'>
-
Возвращает значение, указывающее, совмещена ли маска массива между несколькими массивами. В этом случае любое изменение маски одного массива будет распространено на другие.
-
MaskedArray.hardmask -
Возвращает, является ли маска жесткой (
True) или мягкой (False). Когда маска жесткая, замаскированные записи нельзя размаскировать.
Так как 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.__hex__() <==> hex(x) | |
MaskedArray.__int__() | Преобразование в тип int. |
MaskedArray.__long__() <==> long(x) | |
MaskedArray.__oct__() <==> oct(x) | |
MaskedArray.view([dtype, type]) | Новый вид массива с теми же данными. |
MaskedArray.astype(newtype) | Возвращает копию MaskedArray, преобразованную к заданному новому типу. |
MaskedArray.byteswap(inplace) | Перестановка байтов элементов массива |
MaskedArray.compressed() | Возвращает все немаскированные данные как массив 1-D. |
MaskedArray.filled([fill_value]) | Возвращает копию self, с замаскированными значениями, заполненными заданным значением. |
MaskedArray.tofile(fid[, sep, format]) | Сохранение маскированного массива в файл в двоичном формате. |
MaskedArray.toflex() | Преобразование маскированного массива в массив гибкого типа. |
MaskedArray.tolist([fill_value]) | Возвращает часть данных маскированного массива в виде иерархического списка Python. |
MaskedArray.torecords() | Преобразование маскированного массива в массив гибкого типа. |
MaskedArray.tostring([fill_value, order]) | Эта функция является совместимым псевдонимом для tobytes. |
MaskedArray.tobytes([fill_value, order]) | Возвращает данные массива в виде строки, содержащей сырые байты в массиве. |
Изменение формы
Для reshape, resize и transpose одиночный кортеж может быть заменен на n целые числа, которые будут интерпретированы как n-кортеж.
MaskedArray.flatten([order]) | Возвращает копию массива, сжатого в одну размерность. |
MaskedArray.ravel([order]) | Возвращает 1-мерную версию 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. Если axis равно None, то массив обрабатывается как 1-мерный массив. Любое другое значение 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]) | Проверить, являются ли все элементы a истинными. |
MaskedArray.anom([axis, dtype]) | Вычислить аномалии (отклонения от арифметического среднего) по заданной оси. |
MaskedArray.any([axis, out]) | Проверить, являются ли какие-либо элементы a истинными. |
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]) | Возвращает среднее значение элементов массива. |
MaskedArray.min([axis, out, fill_value]) | Возвращает минимальное значение по заданной оси. |
MaskedArray.prod([axis, dtype, out]) | Возвращает произведение элементов массива по заданной оси. |
MaskedArray.product([axis, dtype, out]) | Возвращает произведение элементов массива по заданной оси. |
MaskedArray.ptp([axis, out, fill_value]) | Возвращает (максимум - минимум) по заданному измерению (т.е. |
MaskedArray.round([decimals, out]) | Возвращает a с каждым элементом, округленным до заданного числа десятичных знаков. |
MaskedArray.std([axis, dtype, out, ddof]) | Вычислить стандартное отклонение по указанной оси. |
MaskedArray.sum([axis, dtype, out]) | Возвращает сумму элементов массива по заданной оси. |
MaskedArray.trace([offset, axis1, axis2, ...]) | Возвращает сумму по диагоналям массива. |
MaskedArray.var([axis, dtype, out, ddof]) | Вычислить дисперсию по заданной оси. |
Арифметические и сравнительные операции
Операторы сравнения:
MaskedArray.__lt__ | x.__lt__(y) <==> x<y |
MaskedArray.__le__ | x.__le__(y) <==> x<=y |
MaskedArray.__gt__ | x.__gt__(y) <==> x>y |
MaskedArray.__ge__ | x.__ge__(y) <==> x>=y |
MaskedArray.__eq__(other) | Проверить, равны ли элементы other и self. |
MaskedArray.__ne__(other) | Проверить, не равны ли элементы other и self. |
Логическое значение массива (bool):
MaskedArray.__nonzero__ | x.__nonzero__() <==> x != 0 |
Арифметика:
MaskedArray.__abs__() <==> abs(x) | |
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.__rdiv__ | x.__rdiv__(y) <==> y/x |
MaskedArray.__truediv__(other) | Разделить other на self и вернуть новый массив с маской. |
MaskedArray.__rtruediv__(other) | Разделить self на other и вернуть новый массив с маской. |
MaskedArray.__floordiv__(other) | Разделить other на self и вернуть новый массив с маской. |
MaskedArray.__rfloordiv__(other) | Разделить self на other и вернуть новый массив с маской. |
MaskedArray.__mod__ | x.__mod__(y) <==> x%y |
MaskedArray.__rmod__ | x.__rmod__(y) <==> y%x |
MaskedArray.__divmod__(y) <==> divmod(x, y) | |
MaskedArray.__rdivmod__(y) <==> divmod(y, x) | |
MaskedArray.__pow__(other) | Возвести self в степень other, маскируя потенциальные NaN/бесконечности. |
MaskedArray.__rpow__(other) | Возвести other в степень self, маскируя потенциальные NaN/бесконечности. |
MaskedArray.__lshift__ | x.__lshift__(y) <==> x<<y |
MaskedArray.__rlshift__ | x.__rlshift__(y) <==> y<<x |
MaskedArray.__rshift__ | x.__rshift__(y) <==> x>>y |
MaskedArray.__rrshift__ | x.__rrshift__(y) <==> y>>x |
MaskedArray.__and__ | x.__and__(y) <==> x&y |
MaskedArray.__rand__ | x.__rand__(y) <==> y&x |
MaskedArray.__or__ | x.__or__(y) <==> x|y |
MaskedArray.__ror__ | x.__ror__(y) <==> y|x |
MaskedArray.__xor__ | x.__xor__(y) <==> x^y |
MaskedArray.__rxor__ | x.__rxor__(y) <==> y^x |
Арифметические операции на месте:
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__ | x.__imod__(y) <==> x%=y |
MaskedArray.__ipow__(other) | Возвести self в степень other на месте. |
MaskedArray.__ilshift__ | x.__ilshift__(y) <==> x<<=y |
MaskedArray.__irshift__ | x.__irshift__(y) <==> x>>=y |
MaskedArray.__iand__ | x.__iand__(y) <==> x&=y |
MaskedArray.__ior__ | x.__ior__(y) <==> x|=y |
MaskedArray.__ixor__ | x.__ixor__(y) <==> x^=y |
Представление
MaskedArray.__repr__() | Буквальное строковое представление. |
MaskedArray.__str__() | Строковое представление. |
MaskedArray.ids() | Возвращает адреса областей данных и маски. |
MaskedArray.iscontiguous() | Возвращает булево значение, указывающее, являются ли данные непрерывными. |
Специальные методы
Для функций стандартной библиотеки:
MaskedArray.__copy__([order]) | Возвращает копию массива. |
MaskedArray.__deepcopy__([memo]) | |
MaskedArray.__getstate__() | Возвращает внутреннее состояние маскированного массива для целей сериализации. |
MaskedArray.__reduce__() | Возвращает тройку кортежей для сериализации MaskedArray. |
MaskedArray.__setstate__(state) | Восстанавливает внутреннее состояние маскированного массива для целей сериализации. |
Базовая настройка:
MaskedArray.__new__([data, mask, dtype, ...]) | Создает новый маскированный массив с нуля. |
MaskedArray.__array__(...) | Возвращает либо новую ссылку на self, если dtype не задан, либо новый массив заданного типа данных, если dtype отличается от текущего типа данных массива. |
MaskedArray.__array_wrap__(obj[, context]) | Специальный обработчик для функций ufuncs. |
Настройка контейнера: (см. Индексирование)
MaskedArray.__len__() <==> len(x) | |
MaskedArray.__getitem__(indx) | x.__getitem__(y) <==> x[y] |
MaskedArray.__setitem__(indx, value) | x.__setitem__(i, y) <==> x[i]=y |
MaskedArray.__delitem__ | x.__delitem__(y) <==> del x[y] |
MaskedArray.__getslice__(i, j) | x.__getslice__(i, j) <==> x[i:j] |
MaskedArray.__setslice__(i, j, value) | x.__setslice__(i, j, value) <==> x[i:j]=value |
MaskedArray.__contains__ | x.__contains__(y) <==> y in x |
Конкретные методы
Обработка маски
Следующие методы могут использоваться для доступа к информации о маске или для управления ею.
MaskedArray.__setmask__(mask[, copy]) | Установить маску. |
MaskedArray.harden_mask() | Принудительно установить маску в жёсткий режим. |
MaskedArray.soften_mask() | Принудительно установить маску в мягкий режим. |
MaskedArray.unshare_mask() | Копировать маску и установить флаг sharedmask в False. |
MaskedArray.shrink_mask() | Свести маску к nomask, когда это возможно. |
Обработка значения заполнения
MaskedArray.get_fill_value() | Возвращает значение заполнения маскированного массива. |
MaskedArray.set_fill_value([value]) | Устанавливает значение заполнения маскированного массива. |
Подсчёт отсутствующих элементов
MaskedArray.count([axis]) | Подсчитывает количество элементов без маски в массиве по заданной оси. |
© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/maskedarray.baseclass.html