A collection and description of functions for data
preprocessing of extreme values. This includes tools
to separate data beyond a threshold value, to compute
blockwise data like block maxima, and to decluster
point process data.
The functions are:
||Block Maxima from a vector or a time series,|
||Upper threshold for a given number of extremes,|
||Peaks over Threshold from a vector or a time series,|
||Declusters clustered point process data.|
1 2 3 4
the block size. A numeric value is interpreted as the number
of data values in each successive block. All the data is used,
so the last block may not contain
a logical value. Should the results be plotted? By
a numeric value or vector giving number of extremes above
the threshold. By default,
parameter to be used in the runs method; any two consecutive threshold exceedances separated by more than this number of observations/days are considered to belong to different clusters.
a numeric value at which level the data are to be truncated. By
default the threshold value which belongs to the 95% quantile,
a numeric data vector from which
Computing Block Maxima:
blockMaxima calculates block maxima from a vector
or a time series, whereas the function
blocks is more general and allows for the calculation of
an arbitrary function
FUN on blocks.
findThreshold finds a threshold so that a given
number of extremes lie above. When the data are tied a threshold is
found so that at least the specified number of extremes lie above.
De-Clustering Point Processes:
deCluster declusters clustered point process
data so that Poisson assumption is more tenable over a high threshold.
returns a timeSeries object or a numeric vector of block maxima data.
returns a numeric value or vector of suitable thresholds.
returns a timeSeries object or a numeric vector of peaks over a threshold.
returns a timeSeries object or a numeric vector for the declustered point process.
Some of the functions were implemented from Alec Stephenson's
evir ported from Alexander McNeil's S library
EVIS, Extreme Values in S, some from Alec Stephenson's
ismev based on Stuart Coles code from his book,
Introduction to Statistical Modeling of Extreme Values and
some were written by Diethelm Wuertz.
Coles S. (2001); Introduction to Statistical Modelling of Extreme Values, Springer.
Embrechts, P., Klueppelberg, C., Mikosch, T. (1997); Modelling Extremal Events, Springer.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
## findThreshold - # Threshold giving (at least) fifty exceedances for Danish data: x = as.timeSeries(data(danishClaims)) findThreshold(x, n = c(10, 50, 100)) ## blockMaxima - # Block Maxima (Minima) for left tail of BMW log returns: BMW = as.timeSeries(data(bmwRet)) colnames(BMW) = "BMW.RET" head(BMW) x = blockMaxima( BMW, block = 65) head(x) y = blockMaxima(-BMW, block = 65) head(y) y = blockMaxima(-BMW, block = "monthly") head(y) ## pointProcess - # Return Values above threshold in negative BMW log-return data: PP = pointProcess(x = -BMW, u = quantile(as.vector(x), 0.75)) PP nrow(PP) ## deCluster - # Decluster the 200 exceedances of a particular DC = deCluster(x = PP, run = 15, doplot = TRUE) DC nrow(DC)