MFT.peaks {MFT} | R Documentation |
MFT.peaks
Description
The multiple filter test for peak detection in time series or sequences of random variables
Usage
MFT.peaks(x, autoset.H = TRUE, S = NULL, E = NULL, H = NULL,
alpha = 0.05, method = "asymptotic", sim = 10000, Q = NA,
blocksize = NA, two.sided = FALSE, perform.CPD = TRUE,
print.output = TRUE)
Arguments
x |
numeric vector, input sequence of random variables |
autoset.H |
logical, automatic choice of window size H |
S |
numeric, start of time interval, default: NULL, if NULL then 1 is chosen |
E |
numeric, end of time interval, default: NULL, if NULL then length(X) is chosen, needs E > S |
H |
vector, window set H, the smallest element must >= 3 be and the largest =< (T/2). H is automatically set if autoset.H = TRUE |
alpha |
numeric, in (0,1), significance level |
method |
either "asymptotic", "bootstrap" or "fixed", defines how threshold Q is derived, default: "asymptotic", If "asymptotic": Q is derived by simulation of limit process L (Gaussian process); possible set number of simulations (sim), If "bootstrap": Q is derived by (Block)-Bootstrapping; possibly set number of simulations (sim) and blocksize (blocksize), If "fixed": Q may be set manually (Q) |
sim |
integer, > 0, No of simulations of limit process (for approximation of Q), default = 10000 |
Q |
numeric, rejection threshold, default: Q is simulated according to sim and alpha |
blocksize |
NA or integer >= 1, if method == 'bootstrap', blocksize determines the size of blocks (number of life times) for bootstrapping |
two.sided |
logical, if TRUE a two sided test is performed and also negative peaks are considered in peak detection |
perform.CPD |
logical, if TRUE change point detection algorithm is performed |
print.output |
logical, if TRUE results are printed to the console |
Value
invisible
M |
test statistic |
Q |
rejection threshold |
method |
how threshold Q was derived, see 'Arguments' for detailed description |
sim |
number of simulations of the limit process (approximation of Q) |
blocksize |
size of blocks (number of life times) for bootstrapping (approximation of Q) |
CP |
set of change points estmated by the multiple filter algorithm, increasingly ordered in time |
S |
start of time interval |
E |
end of time interval |
Tt |
length of time interval |
H |
window set |
alpha |
significance level |
two.sided |
logigal, if TRUE also negative peaks are considered |
perform.CPD |
logical, if TRUE change point detection algorithm was performed |
tech.var |
list of technical variables with processes x and D_ht |
type |
type of MFT which was performed: "peaks" |
Author(s)
Michael Messer, Stefan Albert, Solveig Plomer and Gaby Schneider
References
Michael Messer, Hendrik Backhaus, Albrecht Stroh and Gaby Schneider (2019+). Peak detection in times series
See Also
MFT.filterdata, plot.MFT, summary.MFT, MFT.mean, MFT.rate, MFT.variance
Examples
# Normal distributed sequence with 2 peaks
set.seed(12)
m <- c(rep(0,30),seq(0,3,length.out = 100),seq(3,0,length.out = 80),rep(0,10),
seq(0,6,length.out = 50),seq(6,0,length.out = 50),rep(0,30))
x <- rnorm(length(m),m)
mft <- MFT.peaks(x)
plot(mft)
# Set additional parameters (window set)
mft <- MFT.peaks(x,autoset.H = FALSE, H =c(30,60,90))
plot(mft)