numpy.ma.fix_invalid#

ma.fix_invalid(a, маска=np.False_, copy=True, fill_value=None)[источник]#

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

Неверные данные означают значения nan, inf, и т.д.

Параметры:
aarray_like

Входной массив, (подкласс) ndarray.

маскаsequence, optional

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

copybool, необязательно

Использовать ли копию a (True) или исправить a на месте (False). По умолчанию True.

fill_valueскаляр, опционально

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

Возвращает:
bMaskedArray

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

Примечания

Копирование выполняется по умолчанию.

Примеры

>>> import numpy as np
>>> x = np.ma.array([1., -1, np.nan, np.inf], mask=[1] + [0]*3)
>>> x
masked_array(data=[--, -1.0, nan, inf],
             mask=[ True, False, False, False],
       fill_value=1e+20)
>>> np.ma.fix_invalid(x)
masked_array(data=[--, -1.0, --, --],
             mask=[ True, False,  True,  True],
       fill_value=1e+20)
>>> fixed = np.ma.fix_invalid(x)
>>> fixed.data
array([ 1.e+00, -1.e+00,  1.e+20,  1.e+20])
>>> x.data
array([ 1., -1., nan, inf])