我有多个数组,对于那些我计算线性回归的数组,但有时它给我0/0值,这给了我' NaN' 。我知道要转换数字为NaN的数组,您可以使用numpy.nan_to_num转换它们。但是,如果我想转换单个值不在数组中,但是是线性回归calculation的结果呢?
编辑:这不是一个重复的问题(convert nan value to zero),因为我指的是不在数组中的项目/结果
答案 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