如何避免NumPy中的“RuntimeWarning: divide中遇到无效值”?
我正在尝试避免在NumPy中出现警告 RuntimeWarning: invalid value encountered in divide
。
我原以为可以这样做:
import numpy as np
A=np.array([0.0])
print A.dtype
with np.errstate(divide='ignore'):
B=A/A
print B
但是这样会得到:
float64
./t.py:9: RuntimeWarning: invalid value encountered in divide
B=A/A
[ nan]
如果我把 B=A/A
替换成 np.float64(1.0) / 0.0
,就不会出现警告了。
1 个回答
27
你需要设置的是 invalid
,而不是 divide
:
with np.errstate(invalid='ignore'):
^^^^^^^