Есть ли способ перечислить объекты, не замаскированные в масках numpy ndarray
(например, так, что ndenumerate
делает это для обычного ndarrays
, но опускает все замаскированные записи)?numpy: ndenumerate для маскированных массивов?
EDIT: точнее: перечисление должно не только пропускать замаскированные записи, но также показывать индексы немаскированных в исходном массиве. Например. если первые пять элементов массива 1-мерного типа замаскированы, а следующее имеет незамасленное значение 3, то перечисление должно начинаться с чего-то вроде ((5,), 3), ...
.
Спасибо!
PS: обратите внимание, что, хотя можно применить ndenumerate
к замаскированному ndarray
, результирующее перечисление не различает его замаскированные и обычные записи. Фактически, ndenumerate
не только не отфильтровывает маскированные записи из перечисления, но даже не заменяет перечисленные значения константой masked
. Поэтому для этой задачи нельзя адаптировать ndenumerate
, просто обернув ndenumerate
подходящим фильтром.
посмотреть на сжатую функции мы массивы – tillsten