rreslife.lmoms | R Documentation |
This function computes the L-moments of reversed residual life for a quantile function x(F)
for an exceedance threshold in probabiliy of u
. The L-moments of residual life are thoroughly described by Nair et al. (2013, p. 211). These L-moments are define as
{}_\mathrm{r}\lambda(u)_r = \sum_{k=0}^{r-1} (-1)^k {r-1 \choose k}^2 \int_0^u \left(\frac{p}{u}\right)^{r-k-1} \left(1 - \frac{p}{u}\right)^k \frac{x(p)}{u}\,\mathrm{d}p \mbox{,}
where {}_\mathrm{r}\lambda(u)_r
is the r
th L-moment at residual life probability u
. The L-moment ratios {}_\mathrm{r}\tau(u)_r
have the usual definitions. The implementation here exclusively uses the quantile function of the distribution. If u=0
, then the usual L-moments of the quantile function are returned because the integration domain is the entire potential lifetime range. If u=0
, then {}_\mathrm{r}\lambda(1)_1 = x(0)
is returned, which is the minimum lifetime of the distribution (the value for the lower support of the distribution), and the remaining {}_\mathrm{r}\lambda(1)_r
for r \ge 2
are set to NA
. The reversal aspect is denoted by the prepended romanscript \mathrm{r}
to the \lambda
's and \tau
's. Lastly, the notation (u)
is neither super or subscripted to avoid confusion with L-moment order r
or the TL-moments that indicate trimming level as a superscript (see TLmoms
).
rreslife.lmoms(f, para, nmom=5)
f |
Nonexceedance probability ( |
para |
The parameters from |
nmom |
The number of moments to compute. Default is 5. |
An R list
is returned.
lambdas |
Vector of the L-moments. First element is
|
ratios |
Vector of the L-moment ratios. Second element is
|
life.notexceeds |
The value for |
life.percentile |
The value |
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 |
source |
An attribute identifying the computational source of the L-moments: “rreslife.lmoms”. |
W.H. Asquith
Nair, N.U., Sankaran, P.G., and Balakrishnan, N., 2013, Quantile-based reliability analysis: Springer, New York.
rmlmomco
, reslife.lmoms
# It is easiest to think about residual life as starting at the origin, units in days.
A <- vec2par(c(0.0, 2649, 2.11), type="gov") # so set lower bounds = 0.0
"afunc" <- function(p) { return(par2qua(p,A,paracheck=FALSE)) }
"bfunc" <- function(p,u=NULL) { return((2*p - u)*par2qua(p,A,paracheck=FALSE)) }
f <- 0.35
rL1a <- integrate(afunc, lower=0, upper=f)$value / f # Nair et al. (2013, eq. 6.18)
rL2a <- integrate(bfunc, lower=0, upper=f, u=f)$value / f^2 # Nair et al. (2013, eq. 6.19)
rL <- rreslife.lmoms(f, A, nmom=2) # The data.frame shows equality of the two approaches.
rL1b <- rL$lambdas[1]; rL2b <- rL$lambdas[2]
print(data.frame(rL1a=rL1a, rL1b=rL1b, rL2b=rL2b, rL2b=rL2b))
## Not run:
# 2nd Example, let us look at Tau3, each of the L-skews are the same.
T3 <- par2lmom(A)$ratios[3]
T3.0 <- reslife.lmoms(0, A)$ratios[3]
rT3.1 <- rreslife.lmoms(1, A)$ratios[3]
## End(Not run)
## Not run:
# Nair et al. (2013, p. 212), test shows rL2(u=0.77) = 12.6034
A <- vec2par(c(230, 269, 3.3), type="gpa"); F <- 0.77
"afunc" <- function(p) { return(p*rrmlmomco(p,A)) }
rL2u1 <- (F)^(-2)*integrate(afunc,0,F)$value
rL2u2 <- rreslife.lmoms(F,A)$lambdas[2]
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.