# LognormalDistribution

Lognormal probability distribution object

## Description

A `LognormalDistribution` object consists of parameters, a model description, and sample data for a lognormal probability distribution.

The lognormal distribution, sometimes called the Galton distribution, is a probability distribution whose logarithm has a normal distribution. The lognormal distribution is applicable when the quantity of interest must be positive, because log(x) exists only when x is positive.

The lognormal distribution uses the following parameters.

ParameterDescriptionSupport
`mu` (μ)Mean of logarithmic values$-\infty <\mu <\infty$
`sigma` (σ)Standard deviation of logarithmic values$\sigma \ge 0$

## Creation

There are several ways to create a `LognormalDistribution` probability distribution object.

## Properties

expand all

### Distribution Parameters

Mean of logarithmic values for the lognormal distribution, specified as a scalar value.

Data Types: `single` | `double`

Standard deviation of logarithmic values for the lognormal distribution, specified as a nonnegative scalar value.

You can specify `sigma` to be zero when you create an object by using `makedist`. Some object functions support an object `pd` with zero standard deviation. For example, `random``(pd)` always returns `exp(mu)`.

Data Types: `single` | `double`

### Distribution Characteristics

Logical flag for truncated distribution, specified as a logical value. If `IsTruncated` equals `0`, the distribution is not truncated. If `IsTruncated` equals `1`, the distribution is truncated.

Data Types: `logical`

Number of parameters for the probability distribution, specified as a positive integer value.

Data Types: `double`

Covariance matrix of the parameter estimates, specified as a p-by-p matrix, where p is the number of parameters in the distribution. The (`i`,`j`) element is the covariance between the estimates of the `i`th parameter and the `j`th parameter. The (`i`,`i`) element is the estimated variance of the `i`th parameter. If parameter `i` is fixed rather than estimated by fitting the distribution to data, then the (`i`,`i`) elements of the covariance matrix are 0.

Data Types: `double`

Logical flag for fixed parameters, specified as an array of logical values. If `0`, the corresponding parameter in the `ParameterNames` array is not fixed. If `1`, the corresponding parameter in the `ParameterNames` array is fixed.

Data Types: `logical`

Distribution parameter values, specified as a vector.

Data Types: `single` | `double`

Truncation interval for the probability distribution, specified as a vector containing the lower and upper truncation boundaries.

Data Types: `single` | `double`

### Other Object Properties

Probability distribution name, specified as a character vector.

Data Types: `char`

Data used for distribution fitting, specified as a structure containing the following:

• `data`: Data vector used for distribution fitting.

• `cens`: Censoring vector, or empty if none.

• `freq`: Frequency vector, or empty if none.

Data Types: `struct`

Distribution parameter descriptions, specified as a cell array of character vectors. Each cell contains a short description of one distribution parameter.

Data Types: `char`

Distribution parameter names, specified as a cell array of character vectors.

Data Types: `char`

## Object Functions

 `cdf` Cumulative distribution function `icdf` Inverse cumulative distribution function `iqr` Interquartile range `mean` Mean of probability distribution `median` Median of probability distribution `negloglik` Negative loglikelihood of probability distribution `paramci` Confidence intervals for probability distribution parameters `pdf` Probability density function `proflik` Profile likelihood function for probability distribution `random` Random numbers `std` Standard deviation of probability distribution `truncate` Truncate probability distribution object `var` Variance of probability distribution

## Examples

collapse all

Create a lognormal distribution object using the default parameter values.

`pd = makedist('Lognormal')`
```pd = LognormalDistribution Lognormal distribution mu = 0 sigma = 1 ```

Create a lognormal distribution object by specifying the parameter values.

`pd = makedist('Lognormal','mu',5,'sigma',2)`
```pd = LognormalDistribution Lognormal distribution mu = 5 sigma = 2 ```

Compute the mean of the lognormal distribution.

`mean(pd)`
```ans = 1.0966e+03 ```