{ } Raw JSON

bundles / scipy 1.17.1 / scipy / stats / _distribution_infrastructure / exp

function

scipy.stats._distribution_infrastructure:exp

source: /scipy/stats/_distribution_infrastructure.py :5722

Signature

def   exp ( X / )

Summary

Natural exponential of a random variable

Parameters

X : `ContinuousDistribution`

The random variable .

Returns

Y : `ContinuousDistribution`

A random variable .

Notes

Array API Standard Support

exp has experimental support for Python Array API Standard compatible backends in addition to NumPy. Please consider testing these features by setting an environment variable SCIPY_ARRAY_API=1 and providing CuPy, PyTorch, JAX, or Dask arrays as array arguments. The following combinations of backend and device (or other capability) are supported.

====================  ====================  ====================
Library               CPU                   GPU
====================  ====================  ====================
NumPy                 ✅                     n/a                 
CuPy                  n/a                   ⛔                   
PyTorch               ⛔                     ⛔                   
JAX                   ⛔                     ⛔                   
Dask                  ⛔                     n/a                 
====================  ====================  ====================

See dev-arrayapi for more information.

Examples

Suppose we have a normally distributed random variable :math:`X`:
import numpy as np
from scipy import stats
X = stats.Normal()
We wish to have a lognormally distributed random variable :math:`Y`, a random variable whose natural logarithm is :math:`X`. If :math:`X` is to be the natural logarithm of :math:`Y`, then we must take :math:`Y` to be the natural exponential of :math:`X`.
Y = stats.exp(X)
To demonstrate that ``X`` represents the logarithm of ``Y``, we plot a normalized histogram of the logarithm of observations of ``Y`` against the PDF underlying ``X``.
import matplotlib.pyplot as plt
rng = np.random.default_rng(435383595582522)
y = Y.sample(shape=10000, rng=rng)
ax = plt.gca()
ax.hist(np.log(y), bins=50, density=True)
X.plot(ax=ax)
plt.legend(('PDF of `X`', 'histogram of `log(y)`'))
plt.show()
fig-9ce4bf00b72a7641.png

Aliases

  • scipy.stats.exp

Referenced by

This package