lognormal {VGAM} | R Documentation

## Lognormal Distribution

### Description

Maximum likelihood estimation of the (univariate) lognormal distribution.

### Usage

    lognormal(lmeanlog = "identity", lsdlog = "loge",
              emeanlog=list(), esdlog=list(), zero = NULL)
    lognormal3(lmeanlog = "identity", lsdlog = "loge",
               emeanlog=list(), esdlog=list(),
               powers.try = (-3):3, delta = NULL, zero = NULL)

### Arguments

`lmeanlog, lsdlog` | Parameter link functions applied to the mean and (positive) sigma (standard deviation) parameter. Both of these are on the log scale. See `Links` for more choices.
`emeanlog, esdlog` | List. Extra argument for each of the links. See `earg` in `Links` for general information.
`zero` | An integer-valued vector specifying which linear/additive predictors are modelled as intercepts only. For `lognormal()`, the values must be from the set {1,2} which correspond to `mu`, `sigma`, respectively. For `lognormal3()`, the values must be from the set {1,2,3} where 3 is for λ.
`powers.try` | Numerical vector. The initial lambda is chosen as the best value from `min(y) - 10^powers.try` where `y` is the response.
`delta` | Numerical vector. An alternative method for obtaining an initial lambda. Here, `delta = min(y)-lambda`. If given, this supersedes the `powers.try` argument. The value must be positive.

### Details

A random variable Y has a 2-parameter lognormal distribution if log(Y) is distributed N(mu, sigma^2). The expected value of Y, which is

E(Y) = exp(mu + 0.5 sigma^2)

and not mu, make up the fitted values.

A random variable Y has a 3-parameter lognormal distribution if log(Y-lambda) is distributed N(mu, sigma^2). Here, lambda < Y. The expected value of Y, which is

E(Y) = lambda + exp(mu + 0.5 sigma^2)

and not mu, make up the fitted values.

`lognormal()` and `lognormal3()` fit the 2- and 3-parameter lognormal distribution respectively. Clearly, if the location parameter lambda=0 then both distributions coincide.

### Value

An object of class `"vglmff"` (see `vglmff-class`). The object is used by modelling functions such as `vglm`, and `vgam`.

### Author(s)

T. W. Yee

### References

Kleiber, C. and Kotz, S. (2003) Statistical Size Distributions in Economics and Actuarial Sciences, Hoboken, NJ: Wiley-Interscience.

### See Also

`rlnorm`, `normal1`.

### Examples

    y = rlnorm(n <- 1000, meanlog=1.5, sdlog=exp(-0.8))
    fit = vglm(y ~ 1, lognormal, trace=TRUE)
    coef(fit, mat=TRUE)
    Coef(fit)

    x = runif(n <- 1000)
    y = rlnorm(n, mean=0.5, sd=exp(x))
    fit = vglm(y ~ x, lognormal(zero=1), trace=TRUE, crit="c")
    coef(fit, mat=TRUE)
    Coef(fit)

    lambda = 4
    y = lambda + rlnorm(n <- 1000, mean=1.5, sd=exp(-0.8))
    fit = vglm(y ~ 1, lognormal3, trace=TRUE)
    fit = vglm(y ~ 1, lognormal3, trace=TRUE, crit="c")
    coef(fit, mat=TRUE)
    Coef(fit)
    summary(fit)

[Package VGAM version 0.7-9 Index]