Nan to Num Python

时间:2015-01-15 16:30:47

标签: python arrays numpy nan

我有多个数组,对于那些我计算线性回归的数组,但有时它给我0/0值,这给了我' NaN' 。我知道要转换数字为NaN的数组,您可以使用numpy.nan_to_num转换它们。但是,如果我想转换单个值不在数组中,但是是线性回归calculation的结果呢?

编辑:这不是一个重复的问题(convert nan value to zero),因为我指的是不在数组中的项目/结果

2 个答案:

答案 0 :(得分:2)

numpy.nan_to_num适用于标量。

>>> import numpy as np
>>> np.nan_to_num(float('inf'))
1.7976931348623157e+308
>>> np.nan_to_num(float('nan'))
0.0
>>> np.nan_to_num(float('-inf'))
-1.7976931348623157e+308

答案 1 :(得分:0)

您可以检查您选择的变量是否为math.isnan的NaN。如果是,请将其更改为您选择的号码。像这样:

>>> import math
>>> x = float("nan")
>>> x
nan
>>> if math.isnan(x):
...     x = 123 # just an example
...
>>> x
123