numpy.nan_to_num
- numpy.nan_to_num(x, copy=True, nan=0.0, posinf=None, neginf=None)[source]
-
Заменяет NaN на ноль, а бесконечность на большие конечные числа (по умолчанию) или числа, определённые пользователем с использованием ключевых слов
nan,posinfи/илиneginf.Если
xне является точным, NaN заменяется нулём или заданным пользователем значением в ключевом словеnan, бесконечность заменяется наибольшим конечным значением с плавающей точкой, представимым с помощьюx.dtype, или заданным пользователем значением в ключевом словеposinf, а -бесконечность заменяется наименьшим конечным значением с плавающей точкой, представимым с помощьюx.dtype, или заданным пользователем значением в ключевом словеneginf.Для комплексных типов данных вышеперечисленные действия применяются к каждой из действительной и мнимой частей
xпо отдельности.Если
xне является точным, то никакие замены не производятся.- Параметры
-
- xскаляр или array_like
-
Входные данные.
- copybool, необязательно
-
Создать копию
x(True) или заменить значения на месте (False). Операция на месте выполняется только в том случае, если преобразование в массив не требует копирования. По умолчанию True.Введено в версии 1.13.
- nanint, float, необязательно
-
Значение, используемое для заполнения значений NaN. Если значение не передано, значения NaN будут заменены на 0.0.
Введено в версии 1.17.
- posinfint, float, необязательно
-
Значение, используемое для заполнения значений положительной бесконечности. Если значение не передано, значения положительной бесконечности будут заменены очень большим числом.
Введено в версии 1.17.
- neginfint, float, необязательно
-
Значение, используемое для заполнения значений отрицательной бесконечности. Если значение не передано, значения отрицательной бесконечности будут заменены очень маленьким (или отрицательным) числом.
Введено в версии 1.17.
- Возвращает
-
- outndarray
-
x, со значениями, не являющимися числами, заменёнными. Еслиcopyравно False, это может быть самоx.
См. также
isinf-
Показывает, какие элементы являются положительной или отрицательной бесконечностью.
isneginf-
Показывает, какие элементы являются отрицательной бесконечностью.
isposinf-
Показывает, какие элементы являются положительной бесконечностью.
isnan-
Показывает, какие элементы являются Не Числом (NaN).
isfinite-
Показывает, какие элементы являются конечными (не NaN и не бесконечность).
Примечания
NumPy использует стандарт IEEE для двоичной арифметики с плавающей запятой (IEEE 754). Это означает, что Не число не эквивалентно бесконечности.
Примеры
>>> np.nan_to_num(np.inf) 1.7976931348623157e+308 >>> np.nan_to_num(-np.inf) -1.7976931348623157e+308 >>> np.nan_to_num(np.nan) 0.0 >>> x = np.array([np.inf, -np.inf, np.nan, -128, 128]) >>> np.nan_to_num(x) array([ 1.79769313e+308, -1.79769313e+308, 0.00000000e+000, # may vary -1.28000000e+002, 1.28000000e+002]) >>> np.nan_to_num(x, nan=-9999, posinf=33333333, neginf=33333333) array([ 3.3333333e+07, 3.3333333e+07, -9.9990000e+03, -1.2800000e+02, 1.2800000e+02]) >>> y = np.array([complex(np.inf, np.nan), np.nan, complex(np.nan, np.inf)]) array([ 1.79769313e+308, -1.79769313e+308, 0.00000000e+000, # may vary -1.28000000e+002, 1.28000000e+002]) >>> np.nan_to_num(y) array([ 1.79769313e+308 +0.00000000e+000j, # may vary 0.00000000e+000 +0.00000000e+000j, 0.00000000e+000 +1.79769313e+308j]) >>> np.nan_to_num(y, nan=111111, posinf=222222) array([222222.+111111.j, 111111. +0.j, 111111.+222222.j])
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.nan_to_num.html