添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

In this article we will discuss how to fix RuntimeWarning: overflow encountered in exp in Python.

This warning occurs while using the NumPy library’s exp() function upon using on a value that is too large. This function is used to calculate the exponential of all elements in the input array or an element (0-D Array of NumPy).

Example : Code to depict warning

Python3

Output:

The output is infinity cause e^789 is a very large value

This warning occurs because the maximum size of data that can be used in NumPy is float64 whose maximum range is 1.7976931348623157e+308. Upon taking logarithm its value becomes 709.782. For any larger value than this, the warning is generated.

Let us discuss ways to fix this.

Method 1: Using float128

The data type float64 can be changed to float128.

Example: Program to fix the warning

Python3

Using float128

For ndarray you can use the dtype parameter of the array method.

Example: Program to produce output without using dtype

Python3

Method 2: Using filterwarnings()

Warning messages are typically issued in situations where it is useful to alert the user of some condition in a program, where that condition (normally) doesn’t warrant raising an exception and terminating the program. To deal with warnings there is a built-in module called warning. To read more about python warnings you can check out this article .

The filterwarnings() function can be used to control the behavior of warnings in your programs. The warnings filter controls whether warnings are ignored, displayed, or turned into errors (raising an exception). This can be done using different actions:

  • “ignore” to never print matching warnings
  • “error” to turn matching warnings into exceptions
  • “once” to print only the first occurrence of matching warnings, regardless of location
  • Syntax:

    warnings.filterwarnings(action, message=”, category=Warning, module=”, lineno=0, append=False)

    Example: Fixing warning using filterwarnings()

    Python3

    How to Fix: runtimewarning: invalid value encountered in double_scalars
    In this article, we will discuss how to fix runtimewarning: invalid value encountered in double_scalars using Python. The error which we basically encounter when we use the Numpy library is Runtimewarning: invalid value encountered in doubled_scalars. We face this error basically when we do mathematical operations on a list of very large numbers or
    How to Fix: Invalid value encountered in true_divide
    In this article, we are going to fix, invalid values encountered in true_divide in Python. Invalid value encountered in true_divide is a Runtime Warning occurs when we perform an invalid division operation between elements of NumPy arrays. One of the examples of Invalid division is 0/0. Note: As it is just a Warning the code won't stop from its exe
    How to Fix - KeyError in Python – How to Fix Dictionary Error
    Python is a versatile and powerful programming language known for its simplicity and readability. However, like any other language, it comes with its own set of errors and exceptions. One common error that Python developers often encounter is the "KeyError". In this article, we will explore what a KeyError is, why it occurs, and various methods to
    numpy.exp() in Python
    numpy.exp(array, out = None, where = True, casting = 'same_kind', order = 'K', dtype = None) : This mathematical function helps user to calculate exponential of all the elements in the input array. Parameters : array : [array_like]Input array or object whose elements, we need to test. out : [ndarray, optional]Output array with same dimensions as In
    Python math library | exp() method
    Python has math library and has many functions regarding it. One such function is exp(). This method is used to calculate the power of e i.e. e^y or we can say exponential of y. The value of e is approximately equal to 2.71828….. Syntax : math.exp(y) Parameters : y [Required] - It is any valid python number either positive or negative. Note that if
    Python | cmath.exp() method
    With the help of cmath.exp() method, we can find the exponent of any number by passing it to cmath.exp() method. Syntax : cmath.exp(value) Return : Return the exponential value. Example #1 : In this example we can see that by using cmath.exp() method, we are able to get the values of exponent by passing any value to it. # importing cmath library im
    Python | Decimal exp() method
    Decimal#exp() : exp() is a Decimal class method which returns the value of the (natural) exponential function e**x at the given number Syntax: Decimal.exp() Parameter: Decimal values Return: the value of the (natural) exponential function e**x at the given number Code #1 : Example for exp() method # Python Program explaining # exp() method # loadin
    Python - PyTorch exp() method
    PyTorch torch.exp() method returns a new tensor after getting the exponent of the elements of the input tensor. Syntax: torch.exp(input, out=None) Arguments input: This is input tensor. out: The output tensor. Return: It returns a Tensor. Let's see this concept with the help of few examples: Example 1: # Importing the PyTorch library import torch #
    Python - tensorflow.raw_ops.Exp()
    TensorFlow is open-source python library designed by Google to develop Machine Learning models and deep learning neural networks. TensorFlow raw_ops provides low level access to all TensorFlow operations. Exp() is used to find element wise exponential of x. For complex numbers e^(x+iy) = e^x * e^iy = e^x * (cos y + i sin y) Syntax: tf.raw_ops.Exp(x
    Calculate exp(x) - 1 for all elements in a given NumPy array
    Exponential Function (e^x) is a mathematical function that calculates e raised to the power x where e is an irrational number, approximately 2.71828183. It can be calculated using the numpy.exp() method. This mathematical function helps user to calculate exponential of all the elements in the input array. Syntax: numpy.exp(arr, out, where) Paramete
    We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy Got It !
    Please go through our recently updated Improvement Guidelines before submitting any improvements.
    This article is being improved by another user right now. You can suggest the changes for now and it will be under the article's discussion tab.
    You will be notified via email once the article is available for improvement. Thank you for your valuable feedback!
    Please go through our recently updated Improvement Guidelines before submitting any improvements.
    Suggest Changes
    Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.