我试图避免在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
,则不会发出警告。
答案 0 :(得分:25)
您需要设置invalid
而不是divide
:
with np.errstate(invalid='ignore'):
^^^^^^^