# numpy.logaddexp() in Python

Last Updated : 28 Nov, 2018

numpy.logaddexp() function is used to calculate Logarithm of the sum of exponentiations of the inputs.

This function is useful in statistics where the calculated probabilities of events may be so small as to exceed the range of normal floating point numbers. In such cases, the logarithm of the calculated probability is stored. This function allows adding probabilities stored in such a fashion. It Calculates `log(exp(arr1) + exp(arr2))` .

Syntax : numpy.logaddexp(arr1, arr2, /, out=None, *, where=True, casting=’same_kind’, order=’K’, dtype=None, ufunc â€˜logaddexpâ€™)

Parameters :
arr1 : [array_like] Input array.
arr2 : [array_like] Input array.
out : [ndarray, optional] A location into which the result is stored.
-> If provided, it must have a shape that the inputs broadcast to.
-> If not provided or None, a freshly-allocated array is returned.
where : [array_like, optional] True value means to calculate the universal functions(ufunc) at that position, False value means to leave the value in the output alone.
**kwargs : allows you to pass keyword variable length of argument to a function. It is used when we want to handle named argument in a function.

Return : [ndarray or scalar] It returns Logarithm of exp(arr1) + exp(arr2). This is a scalar if both arr1 and arr2 are scalars.

Code #1 :

 `# Python3 code demonstrate logaddexp() function ` ` `  `# importing numpy ` `import` `numpy as np ` ` `  `in_num1 ``=` `2` `in_num2 ``=` `3` `print` `(``"Input  number1 : "``, in_num1) ` `print` `(``"Input  number2 : "``, in_num2) ` ` `  `out_num ``=` `np.logaddexp(in_num1, in_num2) ` `print` `(``"Output number : "``, out_num) `

Output :

```Input  number1 :  2
Input  number2 :  3
Output number :  3.31326168752
```

Code #2 :

 `# Python3 code demonstrate logaddexp() function ` ` `  `# importing numpy ` `import` `numpy as np ` ` `  `in_arr1 ``=` `[``2``, ``3``, ``8``]  ` `in_arr2 ``=` `[``1``, ``2``, ``3``] ` `print` `(``"Input array1 : "``, in_arr1)  ` `print` `(``"Input array2 : "``, in_arr2) ` `   `  `out_arr ``=` `np.logaddexp(in_arr1, in_arr2)  ` `print` `(``"Output array : "``, out_arr)  `

Output :

```Input array1 :  [2, 3, 8]
Input array2 :  [1, 2, 3]
Output array :  [ 2.31326169  3.31326169  8.00671535]
```

Article Tags :
Practice Tags :