Eine Warnung, auf die Sie möglicherweise in Python stoßen, ist:

RuntimeWarning: overflow encountered in exp

Diese Warnung tritt auf, wenn Sie die Funktion NumPy exp verwenden, aber einen Wert verwenden, der zu groß ist, um damit verarbeitet zu werden.

Es ist wichtig zu beachten, dass dies lediglich eine Warnung ist und dass NumPy die von Ihnen angeforderte Berechnung weiterhin durchführt, die Warnung jedoch standardmäßig ausgibt.

Wenn Sie auf diese Warnung stoßen, haben Sie zwei Möglichkeiten:

1. Ignoriere es.

2. Unterdrücken Sie die Warnung vollständig.

Das folgende Beispiel zeigt, wie dieser Warnung in der Praxis begegnet werden kann.

So reproduzieren Sie die Warnung

Angenommen, wir führen die folgende Berechnung in Python durch:

import numpy as np

#Führe eine Berechnung durch
print(1/(1+np.exp(1140)))

0.0

/srv/conda/envs/notebook/lib/python3.7/site-packages/ipykernel_launcher.py:3:
RuntimeWarning: overflow encountered in exp

Beachten Sie, dass NumPy die Berechnung durchführt (das Ergebnis ist 0,0), aber dennoch die RuntimeWarning ausgibt.

Diese Warnung wird ausgegeben, weil der Wert np.exp(1140) e 1140 darstellt, was eine massive Zahl ist.

Wir haben NumPy im Grunde gebeten, die folgende Berechnung durchzuführen:

  • 1 / (1 + massive Zahl)

Dies lässt sich reduzieren auf:

  • 1 / massive Zahl

Dies ist effektiv 0, weshalb NumPy das Ergebnis mit 0.0 berechnet hat.

So unterdrücken Sie die Warnung

Wenn wir möchten, können wir das warnings-Paket verwenden, um Warnungen wie folgt zu unterdrücken:

import numpy as np
import warnings

# Warnungen unterdrücken
warnings.filterwarnings('ignore')

#Führe eine Berechnung durch
print(1/(1+np.exp(1140)))

0.0

Beachten Sie, dass NumPy die Berechnung durchführt und keine RuntimeWarning anzeigt.

Hinweis : Im Allgemeinen können Warnungen hilfreich sein, um Code-Bits zu identifizieren, deren Ausführung lange dauert. Seien Sie also sehr wählerisch, wenn Sie sich entscheiden, Warnungen zu unterdrücken.

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere häufige Fehler in Python beheben:

So beheben Sie KeyError in Pandas
Behebung: ValueError: Float NaN kann nicht in Integer konvertiert werden
Behebung: ValueError: Operanden konnten nicht zusammen mit Shapes übertragen werden

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: