scrimp {tsmp} | R Documentation |
Anytime univariate SCRIMP++ algorithm
Description
Computes the best so far Matrix Profile and Profile Index for Univariate Time Series. DISCLAIMER: This algorithm still in development by its authors. Join similarity, RMP and LMP not implemented yet.
Usage
scrimp(
...,
window_size,
exclusion_zone = getOption("tsmp.exclusion_zone", 1/2),
verbose = getOption("tsmp.verbose", 2),
s_size = Inf,
pre_scrimp = 1/4,
pre_only = FALSE
)
Arguments
... |
a |
window_size |
an |
exclusion_zone |
a |
verbose |
an |
s_size |
a |
pre_scrimp |
a |
pre_only |
a |
Details
The Matrix Profile, has the potential to revolutionize time series data mining because of its
generality, versatility, simplicity and scalability. In particular it has implications for time
series motif discovery, time series joins, shapelet discovery (classification), density
estimation, semantic segmentation, visualization, rule discovery, clustering etc. The anytime
SCRIMP computes the Matrix Profile and Profile Index in such manner that it can be stopped before
its complete calculation and return the best so far results allowing ultra-fast approximate
solutions. verbose
changes how much information is printed by this function; 0
means nothing,
1
means text, 2
adds the progress bar, 3
adds the finish sound. exclusion_zone
is used to
avoid trivial matches.
Value
Returns a MatrixProfile
object, a list
with the matrix profile mp
, profile index pi
left and right matrix profile lmp
, rmp
and profile index lpi
, rpi
, window size w
and
exclusion zone ez
.
References
Website: http://www.cs.ucr.edu/~eamonn/MatrixProfile.html
See Also
Other matrix profile computations:
mstomp_par()
,
stamp_par()
,
stomp_par()
,
tsmp()
,
valmod()
Examples
mp <- scrimp(mp_toy_data$data[1:200, 1], window_size = 30, verbose = 0)
ref_data <- mp_toy_data$data[, 1]
query_data <- mp_toy_data$data[, 2]
# self similarity
mp <- scrimp(ref_data, window_size = 30, s_size = round(nrow(ref_data) * 0.1))
# join similarity
mp <- scrimp(ref_data, query_data, window_size = 30, s_size = round(nrow(query_data) * 0.1))