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 : scalar or array_like -
Входные данные.
-
copy : bool, optional -
Создавать копию
x(True) или заменять значения на месте (False). Операция на месте выполняется только в том случае, если преобразование в массив не требует копирования. По умолчанию True. -
nan : int, float, optional -
Значение, используемое для заполнения NaN значений. Если значение не передано, NaN значения будут заменены на 0.0.
-
posinf : int, float, optional -
Значение, используемое для заполнения положительных значений бесконечности. Если значение не передано, положительные значения бесконечности будут заменены очень большим числом.
-
neginf : int, float, optional -
Значение, используемое для заполнения отрицательных значений бесконечности. Если значение не передано, отрицательные значения бесконечности будут заменены очень малым (или отрицательным) числом.
Введено в версии 1.13.
Возвращает: -
out : ndarray -
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–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.17.0/reference/generated/numpy.nan_to_num.html