Hybrid Pareto Extreme Value Mixture Model with Single Continuity Constraint
Hybrid Pareto Extreme Value Mixture Model with Single Continuity Constraint
Density, cumulative distribution function, quantile function and random number generation for the hybrid Pareto extreme value mixture model, but only continuity at threshold and not necessarily continuous in first derivative. The parameters are the normal mean nmean and standard deviation nsd and GPD shape xi.
dhpdcon(x, nmean =0, nsd =1, u = qnorm(0.9, nmean, nsd), xi =0, log =FALSE)phpdcon(q, nmean =0, nsd =1, u = qnorm(0.9, nmean, nsd), xi =0, lower.tail =TRUE)qhpdcon(p, nmean =0, nsd =1, u = qnorm(0.9, nmean, nsd), xi =0, lower.tail =TRUE)rhpdcon(n =1, nmean =0, nsd =1, u = qnorm(0.9, nmean, nsd), xi =0)
Arguments
x: quantiles
nmean: normal mean
nsd: normal standard deviation (positive)
u: threshold
xi: shape parameter
log: logical, if TRUE then log density
q: quantiles
lower.tail: logical, if FALSE then upper tail probabilities
p: cumulative probabilities
n: sample size (positive integer)
Returns
dhpdcon gives the density, phpdcon gives the cumulative distribution function, qhpdcon gives the quantile function and rhpdcon gives a random sample.
Details
Extreme value mixture model combining normal distribution for the bulk below the threshold and GPD for upper tail which is continuous at threshold and not necessarily continuous in first derivative.
But it has one important difference to all the other mixture models. The hybrid Pareto does not include the usual tail fraction phiu scaling, i.e. so the GPD is not treated as a conditional model for the exceedances. The unscaled GPD is simply spliced with the normal truncated at the threshold, with no rescaling to account for the proportion above the threshold being applied. The parameters have to adjust for the lack of tail fraction scaling.
The cumulative distribution function defined upto the threshold x≤u, given by:
F(x)=H(x)/r
and above the threshold x>u:
F(x)=(H(u)+G(x))/r
where H(x) and G(X) are the normal and conditional GPD cumulative distribution functions. The normalisation constant r ensures a proper density and is given byr = 1 + pnorm(u, mean = nmean, sd = nsd), i.e. the 1 comes from integration of the unscaled GPD and the second term is from the usual normal component.
The continuity constraint leads to the GPD scale sigmau being replaced by a function of the normal mean, standard deviation, threshold and GPD shape parameters. Determined from setting h(u)=g(u) where h(x) and g(x) are the normal and unscaled GPD density functions (i.e. dnorm(u, nmean, nsd) and dgpd(u, u, sigmau, xi)).
See gpd for details of GPD upper tail component and dnorm for details of normal bulk component.
Note
All inputs are vectorised except log and lower.tail. The main inputs (x, p or q) and parameters must be either a scalar or a vector. If vectors are provided they must all be of the same length, and the function will be evaluated for each element of vector. In the case of rhpdcon any input vector must be of length n.
Default values are provided for all inputs, except for the fundamentals x, q and p. The default sample size for rhpdcon is 1.
Missing (NA) and Not-a-Number (NaN) values in x, p and q are passed through as is and infinite values are set to NA. None of these are not permitted for the parameters.
Error checking of the inputs (e.g. invalid probabilities) is carried out and will either stop or give warning message as appropriate.
Examples
## Not run:set.seed(1)par(mfrow = c(2,2))xx = seq(-5,20,0.01)f1 = dhpdcon(xx, nmean =0, nsd =1.5, u =1, xi =0.4)plot(xx, f1, type ="l")abline(v =4)# three tail behavioursplot(xx, phpdcon(xx), type ="l")lines(xx, phpdcon(xx, xi =0.3), col ="red")lines(xx, phpdcon(xx, xi =-0.3), col ="blue")legend("bottomright", paste("xi =",c(0,0.3,-0.3)), col=c("black","red","blue"), lty =1)sim = rhpdcon(10000, nmean =0, nsd =1.5, u =1, xi =0.2)hist(sim, freq =FALSE,100, xlim = c(-5,20), ylim = c(0,0.2))lines(xx, dhpdcon(xx, nmean =0, nsd =1.5, u =1, xi =0.2), col ="blue")plot(xx, dhpdcon(xx, nmean =0, nsd =1.5, u =1, xi =0), type ="l")lines(xx, dhpdcon(xx, nmean =0, nsd =1.5, u =1, xi =0.2), col ="red")lines(xx, dhpdcon(xx, nmean =0, nsd =1.5, u =1, xi =-0.2), col ="blue")legend("topright", c("xi = 0","xi = 0.2","u = 1, xi = -0.2"), col=c("black","red","blue"), lty =1)## End(Not run)
Scarrott, C.J. and MacDonald, A. (2012). A review of extreme value threshold estimation and uncertainty quantification. REVSTAT - Statistical Journal 10(1), 33-59. Available from http://www.ine.pt/revstat/pdf/rs120102.pdf
Carreau, J. and Y. Bengio (2008). A hybrid Pareto model for asymmetric fat-tailed data: the univariate case. Extremes 12 (1), 53-76.
See Also
gpd and dnorm.
The condmixt package written by one of the original authors of the hybrid Pareto model (Carreau and Bengio, 2008) also has similar functions for the hybrid Pareto (hpareto) and mixture of hybrid Paretos (hparetomixt), which are more flexible as they also permit the model to be truncated at zero.