Main API Function

compute(
ts,
windows = NULL,
query = NULL,
sample_pct = 1,
threshold = 0.98,
n_jobs = 1L
)

## Arguments

ts a matrix or a vector. The time series to analyze. an int or a vector. The window(s) to compute the Matrix Profile. Note that it may be an int for a single matrix profile computation or a vector of int for computing the Pan-Matrix Profile. a matrix or a vector. Optional The query to analyze. Note that when computing the Pan-Matrix Profile the query is ignored! a numeric. A number between 0 and 1 representing how many samples to compute for the Matrix Profile or Pan-Matrix Profile. When it is 1, the exact algorithm is used. (default is 1.0). a numeric. Correlation threshold. See details. (Default is 0.98). an int. The number of cpu cores to use when computing the MatrixProfile. (default is 1).

## Value

The profile computed.

## Details

Computes the exact or approximate Matrix Profile based on the sample percent specified. Currently, MPX and SCRIMP++ are used for the exact and approximate algorithms respectively. See details for more information about the arguments combinations.

When a single windows is given, the Matrix Profile is computed. If a query is provided, AB join is computed. Otherwise the self-join is computed. When multiple windows or none are given, the Pan-Matrix Profile is computed. If a threshold is set (it is, by default), the upper bound will be computed and the given windows or a default range (when no windows), below the upper bound will be computed.

## References

Other Main API: analyze(), discords(), motifs(), visualize()

## Examples


# Matrix Profile
result <- compute(mp_toy_data$data[, 1], 80) #> Error in compute(mp_toy_data$data[, 1], 80): Assertion on 'query_ref' failed. One of the following must apply:
#>  * Must be of class 'NULL', not 'double'
#>  * Must be of length >= 4, but has length 0.
# \donttest{
# Pan-Matrix Profile
result <- compute(mp_toy_data$data[, 1]) #> Error in compute(mp_toy_data$data[, 1]): Assertion on 'query_ref' failed. One of the following must apply:
#>  * Must be of class 'NULL', not 'double'
#>  * Must be of length >= 4, but has length 0.
# }