JLDetectChangePoint: Johnson-Lindendstrauss Dimension Reduction

View source: R/JLDetectChangePoint.R

JLDetectChangePointR Documentation

Johnson-Lindendstrauss Dimension Reduction

Description

Computes a random projection with Bernoulli or Gaussian entries of each element in a time series, then calls detectChangePoint to determine where the change point occurs. In most cases of real data, the BFIC will be significantly greater than 3; it is an open question to determine good values of the BFIC for various types of problems.

Usage

JLDetectChangePoint(
  multiSeries,
  reducedDim = 5,
  useGaussian = FALSE,
  useBFIC = TRUE,
  setdetail,
  showplot = TRUE,
  showall = FALSE,
  fast = TRUE
)

Arguments

multiSeries

The high dimensional time series. Should be a matrix, with each row being an observation of the time series.

reducedDim

The dimension you want to project onto. Should be less than the dimension of the time series. Default is 10

useGaussian

Set to TRUE if you want to use a random Gaussian projection. Default is random matrix of +- 1.

useBFIC

Optional argument to use BFIC to decide change point location.

setdetail

Optional argument to set the detail level you wish to use. Default is all details.

showplot

set to TRUE to see plot of 1-d time series and probability plot.

showall

set to TRUE to see the top three candidate plots based on highest BFIC value

Examples

## Not run: 

data(lennon) #Requires EMD package
lennon_ts <- matrix(as.vector(lennon) + rnorm(65536*120,0,1), nrow = 120, byrow = TRUE)
lennon_ts[80:120,7500:8000] <- lennon_ts[80:120,7500:8000] + 40
image(matrix(lennon_ts[1,], nrow = 256), col = gray(0:100/100))
image(matrix(lennon_ts[90,], nrow = 256), col = gray(0:100/100))
JLDetectChangePoint(lennon_ts, reducedDim = 10,useGaussian = TRUE)


## End(Not run)


speegled/cpbaywave documentation built on Feb. 19, 2024, 11:13 a.m.