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не является неточной, то никакие замены не производятся.- Parameters
-
-
xscalar or array_like -
Входные данные.
-
copybool, optional -
Необходимо ли создать копию
x(True) или заменить значения на месте (False). Операция на месте выполняется только в том случае, если приведение к массиву не требует копирования. По умолчанию True.New in version 1.13.
-
nanint, float, optional -
Значение, используемое для заполнения NaN значений. Если значение не передано, значения NaN заменяются на 0.0.
New in version 1.17.
-
posinfint, float, optional -
Значение, используемое для заполнения значений положительной бесконечности. Если значение не передано, значения положительной бесконечности заменяются очень большим числом.
New in version 1.17.
-
neginfint, float, optional -
Значение, используемое для заполнения значений отрицательной бесконечности. Если значение не передано, значения отрицательной бесконечности заменяются очень малым (или отрицательным) числом.
New in version 1.17.
-
- Returns
-
-
outndarray -
x, со значениями бесконечности и NaN, заменёнными. Если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–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.nan_to_num.html