为什么只有在数组长度大于1时才抛出RuntimeWarning
与np.nan
(或math.nan
)进行比较?
In [34]: np.array([np.nan]) > 0
Out[34]: array([False])
In [35]: np.array([np.nan, 5]) > 0
/usr/local/bin/ipython:1: RuntimeWarning: invalid value encountered in greater
#!/usr/local/opt/python/bin/python3.7
Out[35]: array([False, True])
我希望行为保持一致。 np.greater
docs没有提到特定于nan
的行为。我已经用np.seterr(invalid='ignore')
禁用了这些警告,但是我不理解不一致的地方。
Numpy 1.15.0,Python 3.7.0,IPython 6.5.0