parnor {lmomco} | R Documentation |
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.
parnor(lmom,checklmom=TRUE)
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. |
An R list
is returned.
type |
The type of distribution: nor . |
para |
The parameters of the distribution. |
source |
The source of the parameters: “parnor”. |
W.H. Asquith
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.
lmom.ub
, lmomnor
,
cdfnor
, quanor
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"))