Skip to main content
`Ctrl`+`K`
scipy.stats.

# exp

scipy.stats.exp(X, /)

  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\).

      >>> 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()
      >>> 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()