Learn R Programming

lmomco (version 0.88)

par2qua2: Equivalent Quantile Function of Two Distributions

Description

This function combines two distributions into one by weighting of the two quantile functions by the nonexceedance probability. The distributions are specified by the parameter arguments. The left-tail parameter object is the distribution governing the left tail; the right-tail parameter object is the distribution governing the right tail. The quantile function algebra is

$$Q(F) = (1-F) \times Q_{lefttail}(F) + F \times Q_{righttail}(F)$$

where $Q(F)$ is the equivalent quantile for nonexceedance probability $F$ computed by the tail weigthing. $Q_{lefttail}(F)$ is the left-tail quantile function; $Q_{righttail}$ is the right-tail quantile function. Parameter objects are discussed in vec2par and lmom2par functions. If the optional weight argument is provided, then the multiplication of 1-F or F is replaced by 1-weight or weight, respectively. If weight=0, then the quantiles for the right tail are returned, and if weight=1, then the quantiles for the left tail are returned.

A word of caution. The resulting weighted quantile function is not checked for monotonic increase with $F$. This is a required property of quantile functions.

Usage

par2qua2(f,leftpara,rightpara,weight=NULL,...)

Arguments

f
Nonexceedance probability ($0 \le F \le 1$).
leftpara
The left-tail parameters from lmom2par or similar.
rightpara
The right-tail parameters from lmom2par or similar.
weight
An optional weighting argument to use in lieu of F.
...
The additional arguments are passed to the quantile function such as paracheck = FALSE for the generalized Lambda distribution (quagld).

Value

  • Quantile value for $F$ from the two distributions.

See Also

par2qua, lmom2par, and par2cdf2

Examples

Run this code
# Contrived example
lmr       <- lmom.ub(rnorm(20))
leftpara  <- parnor(lmr)
rightpara <- pargev(lmr)
combined.median <- par2qua2(0.5,leftpara,rightpara)

# Bigger example--using Kappa fit to whole sample
# for the right tail and Normal fit to whole sample
# for the left tail
D   <- c(123,523,345,356,2134,345,2365,235,12,235,61)
LM  <- lmom.ub(D)
KAP <- parkap(LM)
NOR <- parnor(LM)
PP  <- pp(D)
plot(PP,sort(D),ylim=c(-500,2300))
lines(PP,par2qua(PP,KAP),col=2)
lines(PP,par2qua(PP,NOR),col=3)
lines(PP,par2qua2(PP,NOR,KAP))

Run the code above in your browser using DataLab