lmomtri {lmomco} | R Documentation |
L-moments of the Asymmetric Triangular Distribution
Description
This function estimates the L-moments of the Asymmetric Triangular distribution given the parameters (,
, and
) from
partri
. The first three L-moments in terms of the parameters are
where is dependent on the integral definining the L-moments in terms of the quantile function (Asquith, 2011, p. 92) with limits of integration of
,
and
are dependent on the integral defining the L-moment in terms of the quantile function with limits of integration of
, and
is dependent on the
and
. Finally, the variables
,
,
, and
are
The higher L-moments are even more ponderous and simpler expressions for the L-moment ratios appear elusive. Bounds for and
are
and
. An approximation for
is
where the residual standard error is and the absolute value of the maximum residual is
. The L-moments of the Symmetrical Triangular distribution for
are considered by Nagaraja (2013) and therein for a symmetric triangular distribution having
then
and
. These L-kurtosis values agree with results of this function that are based on the
theoLmoms.max.ostat
function. The 4th and 5th L-moments and
, respectively, are computed using expectations of order statistic maxima (
expect.max.ostat
) and are defined (Asquith, 2011, p. 95) as
and
These expressions are solved using the expect.max.ostat
function to compute the .
For the symmetrical case of , then
which might be useful for initial parameter estimation through
Usage
lmomtri(para, paracheck=TRUE, nmom=c("3", "5"))
Arguments
para |
The parameters of the distribution. |
paracheck |
A logical controlling whether the parameters and checked for validity. Overriding of this check might help in numerical optimization of parameters for modes near either the minimum or maximum. The argument here makes code base within |
nmom |
The L-moments greater the |
Value
An R list
is returned.
lambdas |
Vector of the L-moments. First element is
|
ratios |
Vector of the L-moment ratios. Second element is
|
trim |
Level of symmetrical trimming used in the computation, which is |
leftrim |
Level of left-tail trimming used in the computation, which is |
rightrim |
Level of right-tail trimming used in the computation, which is |
E33err |
A percent error between the expectation of the |
source |
An attribute identifying the computational source of the L-moments: “lmomtri”. |
Note
The expression for in terms of
is
"tau4tri" <- function(t3) { t3[t3 < -0.14285710 | t3 > 0.14285710] <- NA b <- 0.09012180 a <- c(0, -1.777361, 0, -17.89864, 0, 920.4924, 0, -37793.50) t4 <- b + a[2]*t3^2 + a[4]*t3^4 + a[6]*t3^6 + a[8]*t3^8 return(t4) }
Author(s)
W.H. Asquith
References
Asquith, W.H., 2011, Distributional analysis with L-moment statistics using the R environment for statistical computing: Createspace Independent Publishing Platform, ISBN 978–146350841–8.
Nagaraja, H.N., 2013, Moments of order statistics and L-moments for the symmetric triangular distribution: Statistics and Probability Letters, v. 83, no. 10, pp. 2357–2363.
See Also
partri
, cdftri
, pdftri
, quatri
Examples
lmr <- lmoms(c(46, 70, 59, 36, 71, 48, 46, 63, 35, 52))
lmr
lmomtri(partri(lmr), nmom="5")
par <- vec2par(c(-405, -390, -102), type="tri")
lmomtri(par, nmom="5")$lambdas
# -299 39.4495050 5.5670228 1.9317914 0.8007511
theoLmoms.max.ostat(para=par, qua=quatri, nmom=5)$lambdas
# -299.0000126 39.4494885 5.5670486 1.9318732 0.8002989
# The -299 is the correct by exact solution as are 39.4495050 and 5.5670228, the 4th and
# 5th L-moments diverge from theoLmoms.max.ostat() because the exact solutions and not
# numerical integration of the quantile function was used for E11, E22, and E33.
# So although E44 and E55 come from expect.max.ostat() within both lmomtri() and
# theoLmoms.max.ostat(), the Lambda4 and Lambda5 are not the same because the E11, E22,
# and E33 values are different.
## Not run:
# At extreme limit of Tau3 for the triangular distribution, L-moment ratio diagram
# shows convergence to the trajectory of the Generalized Pareto distribution.
"tau4tri" <- function(t3) { t3[t3 < -0.14285710 | t3 > 0.14285710] <- NA
b <- 0.09012180; a <- c(0, -1.777361, 0, -17.89864, 0, 920.4924, 0, -37793.50)
t4 <- b + a[2]*t3^2 + a[4]*t3^4 + a[6]*t3^6 + a[8]*t3^8; return(t4)
}
F <- seq(0,1, by=0.001)
lmr <- vec2lmom(c(10,9,0.142857, tau4tri(0.142857)))
parA <- partri(lmr); parB <- pargpa(lmr)
xA <- qlmomco(F, parA); xB <- qlmomco(F, parB); x <- sort(unique(c(xA,xB)))
plot(x, pdftri(x,parA), type="l", col=8, lwd=4) # Compare Asym. Tri. to
lines(x, pdfgpa(x,parB), col=2) # Gen. Pareto
## End(Not run)