exp — SciPy v1.15.2 Manual (original) (raw)

scipy.stats.

scipy.stats.exp(X, /)[source]#

Natural exponential of a random variable

Parameters:

XContinuousDistribution

The random variable \(X\).

Returns:

YContinuousDistribution

A random variable \(Y = \exp(X)\).

Examples

Suppose we have a normally distributed random variable \(X\):

import numpy as np from scipy import stats X = stats.Normal()

We wish to have a lognormally distributed random variable \(Y\), a random variable whose natural logarithm is \(X\). If \(X\) is to be the natural logarithm of \(Y\), then we must take \(Y\) to be the natural exponential of \(X\).

To demonstrate that X represents the logarithm of Y, we plot a normalized histogram of the logarithm of observations ofY against the PDF underlying X.

import matplotlib.pyplot as plt rng = np.random.default_rng() 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()

../../_images/scipy-stats-exp-1.png