parnor {lmomco} | R Documentation

## Estimate the Parameters of the Normal Distribution

### Description

This function estimates the parameters of the Normal distribution given the L-moments of the data in an L-moment object such as that returned by `lmom.ub`. The relation between distribution parameters and L-moments is seen under `lmomnor`. There are interesting parallels between λ_2 (L-scale) and σ (standard deviation). The σ estimated from this function will not necessarily equal the output of the `sd()` function of R. See the extended example for further illustration.

### Usage

    parnor(lmom,checklmom=TRUE)

### Arguments

`lmom` | A L-moment object created by `lmom.ub` or `pwm2lmom`.
`checklmom` | Should the `lmom` be checked for validity using the `are.lmom.valid` function. Normally this should be left as the default and it is very unlikely that the L-moments will not be viable (particularly in the tau_4 and tau_3 inequality). However, for some circumstances or large simulation exercises then one might want to bypass this check.

### Value

An R `list` is returned.

`type` | The type of distribution: `nor`.
`para` | The parameters of the distribution.
`source` | The source of the parameters: “parnor”.

### Author(s)

W.H. Asquith

### References

Hosking, J.R.M., 1990, L-moments—Analysis and estimation of distributions using linear combinations of order statistics: Journal of the Royal Statistical Society, Series B, vol. 52, p. 105–124.

Hosking, J.R.M., 1996, FORTRAN routines for use with the method of L-moments: Version 3, IBM Research Report RC20525, T.J. Watson Research Center, Yorktown Heights, New York.

Hosking, J.R.M. and Wallis, J.R., 1997, Regional frequency analysis—An approach based on L-moments: Cambridge University Press.

### See Also

`lmom.ub`, `lmomnor`, `cdfnor`, `quanor`

### Examples

    lmr <- lmom.ub(rnorm(20))
    parnor(lmr)

    # A more extended example to explore the differences between an
    # L-moment derived estimate of the standard deviation and R's sd()
    true.std <- 15000 # select a large standard deviation
    std         <- vector(mode = "numeric") # vector of sd()
    std.by.lmom <- vector(mode = "numeric") # vector of L-scale values
    sam <- 7   # number of samples to simulate
    sim <- 100 # perform simulation sim times
    for(i in seq(1,sim)) {
      Q <- rnorm(sam,sd=15000) # draw random normal deviates
      std[i] <- sd(Q) # compute standard deviation
      lmr <- lmoms(Q) # compute the L-moments
      std.by.lmom[i] <- lmr$lambdas[2] # save the L-scale value
    }
    # convert L-scale values to equivalent standard deviations
    std.by.lmom      <- sqrt(pi)*std.by.lmom

    # compute the two biases and then output
    # see how the standard deviation estimated through L-scale
    # has a smaller bias than the usual (product moment) standard
    # deviation. The unbiasness of L-moments is demonstrated.
    std.bias         <- true.std - mean(std)
    std.by.lmom.bias <- true.std - mean(std.by.lmom)
    cat(c(std.bias,std.by.lmom.bias,"\n"))

[Package lmomco version 0.92 Index]