Wraps cpm::processStream() (Ross, 2015) for distribution-free
sequential changepoint detection via repeated two-sample tests
(Mann-Whitney for location, Mood for scale, Lepage, Kolmogorov-Smirnov and
Cramer-von-Mises for general changes, and parametric Student/Bartlett/GLR
variants). Although the engine is designed for streams, it is run here
over the full series in one pass, mimicking online monitoring with average
run length arl0.
Arguments
- x
A numeric vector.
- cpm_type
Test statistic, passed to
cpm::processStream()ascpmType. Distribution-free:"Mann-Whitney"(location, the default),"Mood"(scale),"Lepage","Kolmogorov-Smirnov","Cramer-von-Mises". Parametric:"Student","Bartlett","GLR"(Gaussian),"Exponential"(positive data),"FET"(Fisher's exact test, for 0/1 Bernoulli data — this one also needs alambdavalue passed through..., e.g.lambda = 0.3).- arl0
Target in-control average run length (how many observations, on average, before a false alarm). Defaults to
500.- startup
Number of observations after each restart before monitoring begins. Defaults to
20.- ...
Additional arguments passed to
cpm::processStream().
Value
A ggcpt object. The changepoints tibble carries a
detection_time column: the index at which the sequential test
flagged each change (always later than the estimated location).
