numpy.ma.ndenumerate#

ma.ndenumerate(a, сжатый=True)[источник]#

Многомерный итератор индексов.

Возвращает итератор, выдающий пары координат массива и значений, пропуская элементы, которые замаскированы. С compressed=False, ma.masked возвращается как значение маскированных элементов. Это поведение отличается от numpy.ndenumerate, который возвращает значение базового массива данных.

Параметры:
aarray_like

Массив с (возможно) замаскированными элементами.

сжатыйbool, необязательно

Если True (по умолчанию), замаскированные элементы пропускаются.

Смотрите также

numpy.ndenumerate

Эквивалентная функция, игнорирующая любую маску.

Примечания

Новое в версии 1.23.0.

Примеры

>>> import numpy as np
>>> a = np.ma.arange(9).reshape((3, 3))
>>> a[1, 0] = np.ma.masked
>>> a[1, 2] = np.ma.masked
>>> a[2, 1] = np.ma.masked
>>> a
masked_array(
  data=[[0, 1, 2],
        [--, 4, --],
        [6, --, 8]],
  mask=[[False, False, False],
        [ True, False,  True],
        [False,  True, False]],
  fill_value=999999)
>>> for index, x in np.ma.ndenumerate(a):
...     print(index, x)
(0, 0) 0
(0, 1) 1
(0, 2) 2
(1, 1) 4
(2, 0) 6
(2, 2) 8
>>> for index, x in np.ma.ndenumerate(a, compressed=False):
...     print(index, x)
(0, 0) 0
(0, 1) 1
(0, 2) 2
(1, 0) --
(1, 1) 4
(1, 2) --
(2, 0) 6
(2, 1) --
(2, 2) 8