search
Search
Unlock 100+ guides
search toc
close
Cancel
Post
account_circle
Profile
exit_to_app
Sign out
search
keyboard_voice
close
Searching Tips
Search for a recipe:
"Creating a table in MySQL"
Search for an API documentation: "@append"
Search for code: "!dataframe"
Apply a tag filter: "#python"
Useful Shortcuts
/ to open search panel
Esc to close search panel
to navigate between search results
d to clear all current filters
Enter to expand content preview Doc Search Code Search Beta SORRY NOTHING FOUND!
mic
Start speaking... Voice search is only supported in Safari and Chrome.
Shrink
Navigate to

schedule Aug 11, 2023
Last updated
local_offer
PythonNumPy
Tags
expand_more
mode_heat
Master the mathematics behind data science with 100+ top-tier guides
Start your free 7-days trial now!

Numpy's `logaddexp(~)` method computes `log(exp(x1)+exp(x2))`, where `x1` and `x2` are the input arrays. This expression is useful because it often crops up in statistics.

# Parameters

1. `x1` | `array-like`

The first input array.

2. `x1` | `array-like`

The second input array.

3. `out` | `Numpy array` | `optional`

Instead of creating a new array, you can place the computed result into the array specified by `out`.

4. `where` | `array` of `boolean` | `optional`

Values that are flagged as False will be ignored, that is, their original value will be uninitialized. If you specified the out parameter, the behavior is slightly different - the original value will be kept intact. Since this is a source of confusion for many, check examples below.

# Return value

A Numpy array that contains the result of `log(p+1)` where `p` is each value in the input array.

# Examples

## Basic usage

``` np.logaddexp([1,2],[3,4]) array([3.12692801, 4.12692801]) ```

## Specifying an output array

``` a = np.zeros(2)np.logaddexp([1,2], [3,4], out=a)a array([3.12692801, 4.12692801]) ```

Here, we've output the result into array `a`.

``` np.logaddexp([1,2,3], [4,5,6], where=[False, True, False]) array([20.00000011, 5.04858735, 6.04858735]) ```

Here, only the second number was used for calculation since it has a corresponding boolean of `True` in the mask. You should notice how the values with `False` yielded strange results - in fact, you should disregard them because they are uninitialized numbers that are of no practical use.

Now, if you specified the out parameter, instead of uninitalized values, the original values will be left intact:

``` a = np.zeros(3)np.logaddexp([1,2,3], [4,5,6], out=a, where=[False, True, False])a array([0. , 5.04858735, 0. ]) ```
thumb_up
thumb_down
Comment
Citation
Ask a question or leave a feedback...
thumb_up
0
thumb_down
0
chat_bubble_outline
0
settings
Enjoy our search
Hit / to insta-search docs and recipes!