Search for Discord

find_discord(.mp, ...)

# S3 method for MatrixProfile
find_discord(
  .mp,
  data,
  n_discords = 1,
  n_neighbors = 3,
  radius = 3,
  exclusion_zone = NULL,
  ...
)

# S3 method for PMP
find_discord(
  .mp,
  data,
  n_discords = 1,
  n_neighbors = 3,
  radius = 3,
  exclusion_zone = NULL,
  ...
)

Arguments

.mp

a MatrixProfile object.

...

further arguments to be passed to class specific function.

data

the data used to build the Matrix Profile, if not embedded.

n_discords

an int. Number of discords to find. (Default is 1).

n_neighbors

an int. Number of neighbors to find. (Default is 3).

radius

an int. Set a threshold to exclude matching neighbors with distance > current discord distance * radius. (Default is 3).

exclusion_zone

if a number will be used instead of embedded value. (Default is NULL).

Value

For class MatrixProfile, returns the input .mp object with a new name discord. It contains: discord_idx, a vector

of discords found

For class PMP, returns the input .mp object with a new name discord. It contains: discord_idx, a vector

of discords found

Examples

# Single dimension data
w <- 50
data <- mp_gait_data
mp <- tsmp(data, window_size = w, exclusion_zone = 1 / 4, verbose = 0)
mp <- find_discord(mp)
pan <- tsmp(mp_gait_data, window_size = 20:30, mode = "pmp")
#> step: 1/11 binary idx: 1 window: 20
#> step: 2/11 binary idx: 6 window: 25
#> step: 3/11 binary idx: 3 window: 22
#> step: 4/11 binary idx: 9 window: 28
#> step: 5/11 binary idx: 2 window: 21
#> step: 6/11 binary idx: 4 window: 23
#> step: 7/11 binary idx: 7 window: 26
#> step: 8/11 binary idx: 10 window: 29
#> step: 9/11 binary idx: 5 window: 24
#> step: 10/11 binary idx: 8 window: 27
#> step: 11/11 binary idx: 11 window: 30
mp <- find_discord(pan)