Regional Frequency Analysis using L-Moments

Functions for regional frequency analysis using the methods of J. R. M. Hosking and J. R. Wallis (1997), "Regional frequency analysis: an approach based on L-moments".


   *                                                *
   *             lmomRFA package news               *
   *                                                *

Version 3.1 2017 Aug 1

o "Native routines" are now "registered".

o The simulation procedure used in regtst() involves fitting a kappa distribution to the regional data. The kappa fit may fail, in which case a generalized logistic distribution is used instead. This has always been the case, but is now documented.

o Fixed: regtst.s() would give an error for a region containing a single site.

Version 3.0-1 2015 Feb 1

o Maintainer's email address changed. No changes to code.

Version 3.0 2014 Jan 13

o Increase in major version number, occasioned by some significant recent changes:

   *  Fix to regsimq() noted below: earlier versions of the package would
      give incorrect results, though errors were typically less than 10%.

   *  Change to computation of relative RMSE in version 2.5.

   Results returned by regsimq() in earlier versions of the package should
   be regarded as unreliable.

o Now explictly imports standard package "stats", and functions from standard package "graphics".

o In regfit() and regsimq(), the search path used to find the functions specified in the arguments regfit(dist=) and regsimq(fit=) is now explicitly defined. (The search path was previously undocumented, and was not consistent across all prior versions of the package.)

o regfit() and regsimq() give more informative error messages when the functions specified in their respective arguments 'dist' and 'fit' cannot be found.

o regquantbounds() and sitequantbounds() should now never return negative error bounds. Instead, NA or Inf is returned for error bounds corresponding to negative or positive estimated quantiles, respectively.

o regsimq() is faster, by about 25% in the author's tests.

o Fixed: regquantbounds() and sitequantbounds() would give negative values for RMSEs corresponding to negative estimated quantiles.

o Fixed: regsimq() computed incorrect values in its return value component " site".

o Fixed: sitequantbounds(), when 'sitenames' is missing and 'index' has names, is documented to use the names of 'index' as the site names but did not in fact do so.

Version 2.5 2013 Jun 17

o Now depends on package lmom, version >= 2.0.

o New function regtst.s().

o In regsimq(), the computation of relative RMSE of estimates of quantiles of the regional growth curve has been modified, and is now more consistent with the error bounds for different probabilities. The interpretation of the relative RMSE has not changed: it is still the relative RMSE of the estimated regional growth curve regarded as an estimator of a randomly chosen site growth curve.

o In 'regsimq(...,save=TRUE)', the matrix that is component 'sim.rgcratio' of the return value now has row names (derived from the value of the function's argument 'f').

o Component "D" of the return value from regtst() now has names (the site names).

o LICENSE file no longer included in package, to avoid a NOTE when building the package for CRAN under R version 3.0.0. The license can be found at

Version 2.4 2012 Jan 23

o The package uses lazy loading of data, so its datasets (Appalach, Cascades, Maxwind) can be accessed without first calling data().

o regtst() now responds more quickly to a user interrupt (e.g. pressing Esc from the R Windows GUI).

o Fixed: regtst() would give an error when the discordancy measure could not be calculated because the covariance matrix of the sample L-moment ratios (matrix A of Hosking and Wallis, 1997, eq. (3.2)) was singular.

Version 2.3 2010 Aug 21

o regsimq() no longer gives an error when asked to compute the estimation accuracy for an infinite quantile; instead it returns NaN values in the relevant places (i.e., elements corresponding to infinite quantiles in the "rel.RMSE" and "rel.bound..." variables of the data frames in components "relbounds.rgc" and "").

o Fixed: when a data frame with only 6 columns was supplied as argument 'regdata' of regtst(), and summary() was called on the resulting object of class "regtst", an error would occur ("Error in quawak ... missing values in parameter vector").

Version 2.2 2009 Nov 16

o evplot.rfd() gains an argument 'add'.

o In the return values of regquantbounds() and sitequantbounds(), column names of "bound" items no longer contain an embedded space: their format is "bound.0.05" etc.

o The data frame supplied as argument 'regdata' of regtst() now need have only 6 rather than 7 columns; if it does, some output quantities will not be calculated. (Originally claimed as a feature of Version 2.0, but not actually implemented therein.)

Version 2.1 2009 Jul 10

o evplot.rfd() is now exported from the package namespace.

o Fixed: as.regdata() would give an error when its argument 'x' was a data frame with default column names ("V1, "V2", etc.).

Version 2.0 2009 Apr 30

o This version of the package aims to enable straightforward computation of all the procedures in chapters 3-6 of Hosking and Wallis (1997). To that end there are several new functions:

  *  regavlmom() computes regional average L-moments. It is similar to
     reglmr() but its interface is more consistent with other functions
     in the package.

  *  regfit() fits a regional frequency distribution to a regional data

  *  regsimh() runs simulations to estimate the distribution of
     heterogeneity and goodness-of-fit measures.

  *  regsimq() runs simulations to estimate the variability of quantile
     estimates from a regional frequency distribution.

  *  regqfunc() and siteqfunc() return the regional growth curve and the
     quantile functions for individual sites, respectively, from a regional
     frequency distribution fitted by regfit().

  *  regquant() and sitequant() directly compute quantiles of the regional
     growth curve and of distributions for individual sites, respectively,
     from a regional frequency distribution fitted by regfit().

  *  regquantbounds() and sitequantbounds() compute error bounds for
     the regional growth curve and for quantiles at individual sites,
     respectively, from a regional frequency distribution fitted by

  *  print.rfd(), print.regsimh(), and print.regsimq() are print methods
     for the objects returned by regfit(), regsimh(), and regsimq(),

o Class "regdata" is introduced as a standard structure for storing L-moments and other key data for the sites in a region.

o New function as.regdata() coerces suitably structured data frames to class "regdata".

o New function evplot.rfd() is a method for generic function evplot() in package 'lmom'. It facilitates graphical display of the results returned by regfit(), regquantbounds(), and sitequantbounds().

o regsamlmu(), with suitable values of its arguments, now returns an object of class "regdata".

o Argument 'regdat' of regtst() is renamed 'regdata', and is expected to be of class "regdata" (after coercion if necessary).

o reglmr() is deprecated; regavlmom() is the recommended replacement.

Version 1.0 2009 Mar 1

o First public release. Functions included: cluagg cluinf clukm print.regtst print.summary.regtst reglmr regsamlmu regtst summary.regtst

   Data sets included:

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


3.3 by J. R. M. Hosking, 2 years ago

Browse source code at

Authors: J. R. M. Hosking

Documentation:   PDF Manual  

Task views: Extreme Value Analysis

Common Public License Version 1.0 license

Imports stats, graphics

Depends on lmom

Imported by lfstat.

Suggested by RcmdrPlugin.lfstat, lmomPi.

See at CRAN