Подтвердить что ты не робот

Как избежать "RuntimeWarning: недопустимое значение, обнаруженное при делении" в NumPy?

Я пытаюсь избежать предупреждения RuntimeWarning: invalid value encountered in divide в NumPy.

Я думал, что смогу сделать:

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, он не выдаст предупреждения.

4b9b3361

Ответ 1

Вам нужно установить invalid, а не divide:

with np.errstate(invalid='ignore'):
                 ^^^^^^^