2013-02-20 12 views
6

Czy istnieje sposób, aby uzyskać bardziej szczegółowe od numpy dla komunikatu o błędzieJak uzyskać bardziej szczegółowe informacje o błędzie numpy dla „RuntimeWarning: nieprawidłowa wartość napotkanych w rozmnażajcie się” błędu

„RuntimeWarning: nieprawidłowa wartość napotkanych w mnożyć”

pochodzi z niektórych linii w kodzie gdzie ja "robię szereg operacji tablicowych mogę dostać numpy zgłosić.

(1) Więcej informacji o nieprawidłowej wartości (inf nan?)

(2) Tablica entr y to powoduje problem?

Oczywiście mogę sam sprawdzić tablicę, ale byłoby miło, gdyby numpy mogło mi powiedzieć, co i gdzie jest problem.

Odpowiedz

5

Prawdopodobnie można uzyskać więcej informacji na temat rodzaju błędu przez numpy.seterrcall (w połączeniu z numpy.seterr, jak pokazano w linku). Jeśli chodzi o zastanawianie się, które array daje problemy, to prawdopodobnie nie jest to możliwe, jak numpy koniecznie tworzy tymczasowe tablice:

a = b + (c*d) 
#  ^This creates a temporary array before adding it to `a` 

oczywiście można użyć seterr podnieść wyjątki zamiast ostrzeżeń, jeśli chcesz wiedzieć jaki numer linii jest numerem obraźliwym w twoim kodzie.

+7

Użyłem np.seterr (all = 'raise'), aby wyjść z tego miejsca w kodzie. –

Powiązane problemy