[Stable]

The log-normal distribution is a commonly used transformation of the Normal distribution. If \(X\) follows a log-normal distribution, then \(\ln{X}\) would be characterised by a Normal distribution.

dist_lognormal(mu = 0, sigma = 1)

Arguments

mu

The mean (location parameter) of the distribution, which is the mean of the associated Normal distribution. Can be any real number.

sigma

The standard deviation (scale parameter) of the distribution. Can be any positive number.

Details

We recommend reading this documentation on pkgdown which renders math nicely. https://pkg.mitchelloharawild.com/distributional/reference/dist_lognormal.html

In the following, let \(X\) be a log-normal random variable with mu = \(\mu\) and sigma = \(\sigma\).

Support: \(R^+\), the set of positive real numbers.

Mean: \(e^{\mu + \sigma^2/2}\)

Variance: \((e^{\sigma^2} - 1) e^{2\mu + \sigma^2}\)

Skewness: \((e^{\sigma^2} + 2) \sqrt{e^{\sigma^2} - 1}\)

Excess Kurtosis: \(e^{4\sigma^2} + 2 e^{3\sigma^2} + 3 e^{2\sigma^2} - 6\)

Probability density function (p.d.f):

$$ f(x) = \frac{1}{x\sqrt{2 \pi \sigma^2}} e^{-(\ln{x} - \mu)^2 / (2 \sigma^2)} $$

Cumulative distribution function (c.d.f):

$$ F(x) = \Phi\left(\frac{\ln{x} - \mu}{\sigma}\right) $$

where \(\Phi\) is the c.d.f. of the standard Normal distribution.

Moment generating function (m.g.f):

Does not exist in closed form.

See also

Examples

dist <- dist_lognormal(mu = 1:5, sigma = 0.1)

dist
#> <distribution[5]>
#> [1] lN(1, 0.01) lN(2, 0.01) lN(3, 0.01) lN(4, 0.01) lN(5, 0.01)
mean(dist)
#> [1]   2.731907   7.426094  20.186216  54.871824 149.157083
variance(dist)
#> [1]   0.07500759   0.55423526   4.09527545  30.26022006 223.59446360
skewness(dist)
#> [1] 0.3017591 0.3017591 0.3017591 0.3017591 0.3017591
kurtosis(dist)
#> [1] 0.1623239 0.1623239 0.1623239 0.1623239 0.1623239

generate(dist, 10)
#> [[1]]
#>  [1] 2.523026 3.185334 2.623249 2.336593 3.163115 2.957748 2.812014 2.857574
#>  [9] 2.967740 2.501851
#> 
#> [[2]]
#>  [1] 7.714561 6.520180 7.911587 6.821428 7.691566 7.368538 6.481991 6.884629
#>  [9] 6.380601 7.327090
#> 
#> [[3]]
#>  [1] 20.20272 17.43808 19.62992 21.45865 18.21947 18.73593 17.66775 17.62386
#>  [9] 17.27313 20.47291
#> 
#> [[4]]
#>  [1] 64.17745 53.56600 54.38803 57.75457 58.22572 56.28621 52.47087 56.66443
#>  [9] 60.11114 58.61740
#> 
#> [[5]]
#>  [1] 132.3500 134.5337 135.3525 147.4294 130.0745 139.9781 144.4944 151.9971
#>  [9] 143.7874 130.4571
#> 

density(dist, 2)
#> [1]  1.799910e-02  1.637111e-37 5.539330e-116 6.972494e-238  0.000000e+00
density(dist, 2, log = TRUE)
#> [1]   -4.017433  -84.702715 -265.387997 -546.073279 -926.758561

cdf(dist, 4)
#> [1]  9.999440e-01  4.203228e-10  7.003186e-59 6.915322e-151 2.970982e-286

quantile(dist, 0.7)
#> [1]   2.864632   7.786878  21.166930  57.537681 156.403632

# A log-normal distribution X is exp(Y), where Y is a Normal distribution of
# the same parameters. So log(X) will produce the Normal distribution Y.
log(dist)
#> <distribution[5]>
#> [1] N(1, 0.01) N(2, 0.01) N(3, 0.01) N(4, 0.01) N(5, 0.01)