Eth*_*xxx 7 python numpy runtime
更新numpy到版本1.14.1后,执行任何命令(例如键入1+1)后,我收到以下警告消息:
/home/username/anaconda3/lib/python3.6/site-packages/numpy
/core/_methods.py:26: RuntimeWarning: invalid value encountered in reduce
return umr_maximum(a, axis, None, out, keepdims)
Run Code Online (Sandbox Code Playgroud)
现在有人问题是什么以及如何解决它?
我知道我要迟到五个月,但我的回答可能会对其他人有所帮助。
首先,警告表明正在运行的矩阵reduce或在reduce内部运行的任何其他函数具有一些无效值。这些无效值主要是NaN或inf。我创建了一个小片段来解释我的意思!
在以下代码段中,我将创建一个x其中包含一些无效值的变量,然后运行reduce内部使用like 的函数numpy.amax()。
>>> import numpy as np
>>>
>>> x = np.array([[0.2, 0.7], [np.nan, np.nan]])
>>> print(np.amax(x, axis=0))
RuntimeWarning: invalid value encountered in reduce
return ufunc.reduce(obj, axis, dtype, out, **passkwargs)
[nan nan]
Run Code Online (Sandbox Code Playgroud)
因此,我的建议是仔细检查导致此问题的矩阵。我不知道这是否与您相同,但对我有用!
下次,当您的代码遇到任何问题时...提供导致问题的代码始终是一个好主意。